0
Hello. As the title of the question already says, I would like to know how to upload a file in png, jpg or jpeg in which your name is always maintained as profilepic. in the directory ['DOCUMENT_ROOT']/images. How to do this? I’ve tried to read some tutorials so far from Stackoverflow, I haven’t come to a conclusion. Evidently I am not looking for a code ready, only that all the codes point as if there were multiple users with random names etc. I thank you already.
My code:
<?php
$target_dir = $_SERVER['DOCUMENT_ROOT'] . '/gh-pages/images/profilepic.png';
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false) {
echo "File is an image - " . $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "File is not an image.";
$uploadOk = 0;
}
}
// Check file size
if ($_FILES["fileToUpload"]["size"] > 500000) {
echo "File is too large!";
$uploadOk = 0;
}
// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType !="jpeg"
&& $imageFileType != "gif" ) {
echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
$uploadOk = 0;
}
// Check if $uploadOk is set to 0 by an error
if ($uploadOk == 0) {
echo "Sorry, your file was not uploaded.";
// if everything is ok, try to upload file
} else {
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.";
} else {
echo "Sorry, there was an error uploading your file.";
}
}
?>
Mistakes:
( ! ) Notice: Undefined index: fileToUpload in C: wamp64 www Gh-pages installation uploadprofilepic.php on line 3 Call Stack Time Memory Function Location 1 0.0011 241736 {main}( ) ... uploadprofilepic.php:0
( ! ) Notice: Undefined index: fileToUpload in C: wamp64 www Gh-pages installation uploadprofilepic.php on line 18 Call Stack Time Memory Function Location 1 0.0011 241736 {main}( ) ... uploadprofilepic.php:0
( ! ) Notice: Undefined index: fileToUpload in C: wamp64 www Gh-pages installation uploadprofilepic.php on line 33 Call Stack Time Memory Function Location 1 0.0011 241736 {main}( ) ... uploadprofilepic.php:0
Sorry, there was an error uploading your file.
Why not generate a random name and connect it to the user by saving the name generated in the database?
– Leo Letto
My project doesn’t work that well. I don’t have multiple users. I need only one file with an invariable name. also looking for an alternative completely without SQL @Leoletto
– MucaP
I think you’re missing an enctype="Multipart/form-data" in your upload form (is this or the file upload is disabled in your php.ini)
– Lucas Ferreira