I created a test folder on my Debian server because I can't handle uploading files to a directory. The browser shows me that I have uploaded the file, but when I look into the directory where the file should be uploaded, no file is shown. I have already set the folder to 777, but PHP does not upload anything.
index.php
<html>
<body>
<form action="upload.php" method="POST" enctype="multipart/form-data">
<input type="file" name="image" />
<input type="submit"/>
</form>
</body>
</html>
upload.php
<?php
if(isset($_FILES['image'])){
$errors= array();
$file_name = $_FILES['image']['name'];
$file_size =$_FILES['image']['size'];
$file_tmp =$_FILES['image']['tmp_name'];
$file_type=$_FILES['image']['type'];
$file_ext=strtolower(end(explode('.',$_FILES['image']['name'])));
$expensions= array("jpeg","jpg","png", "mp3",
"acc", "wav", "3gpp", "mp4", "3gp", "m4a", "amr", "avi",
"flv", "gif");
if(in_array($file_ext,$expensions)=== false){
$errors[]="extension not allowed, please choose a JPEG or PNG file.";
}
if($file_size > 2097152666655){
$errors[]='File size must be excately 2 MB';
}
if(empty($errors)==true){
move_uploaded_file(
$_FILES["image"]["tmp_name"],
$_SERVER['DOCUMENT_ROOT'] . 'files/' . $_FILES["image"]["name"]
);
header("Location: index.php?uploadsuccess");
}else{
print_r($errors);
}
}
?>
files/ is set to 777 as already mentioned.