Я не знаю, правильно ли мой код, но все указывает на успех при отправке.
Моя форма
<form action="upload.php" method="POST" enctype="multipart/form-data">
File: <input type="file" name="file" />
<input type="submit" name="submit" value="Go" />
</form>
Мой файл загрузки
<?php
if($_FILES['file']['name'])
{
if(!$_FILES['file']['error'])
{
$valid_file = true;
if($_FILES['file']['size'] > (1024000)) //can't be larger than 1 MB
{
$valid_file = false;
$message = 'Oops! Your file\ size is to large.';
}
if($valid_file)
{
/
if(move_uploaded_file($_FILES['file']['tmp_name'],'/files')){
echo "Sent";
}else{
echo "~Error~";
}
}
}
//if there is an error...
else
{
$message = 'Ooops! Your upload triggered the following error: '.$_FILES['file']['error'];
}
}
?>
Сообщение, которое я получаю, это "Отправлено", но когда я иду проверять, файлы папок пусты: s
Моя структура папок:
/files - Here is directory where the files will come
index.php - My form
upload.php - My Logic
Одна из проблем, которые я вижу в вашем коде, заключается в том, что вы не указываете имя для вашего "перемещенного" файла:
Эта строка:
move_uploaded_file($_FILES['file']['tmp_name'],'/files')
Должно быть изменено на:
move_uploaded_file($_FILES['file']['tmp_name'],'/files/'.'sampleName'.$extension);// extension is the extension of the file.
Я по-прежнему предполагаю, что ваш путь "/files" верен и не имеет разрешения.
Такая же проблема возникает, если ваша целевая папка не имеет разрешения на запись.
Используйте эту команду, чтобы изменить это:
chmod 775 [folder-name]