Доброго времени суток!
Имеется форма для загрузки файла на сервер:
<form action="" method="post" enctype="multipart/form-data">
<p><label for="upload">Выберите файл для загрузки:
<input type="hidden" name="MAX_FILE_SIZE" value="5120">
<input type="file" id="upload" name="upload">
</label></p>
<p>
<input type="hidden" name="action" value="upload">
<input type="submit" value="Загрузить">
</p>
</form>
Так же есть контроллер *.php:
<?php
if (isset($_POST['action']) and $_POST['action'] == 'upload') {
if (!is_uploaded_file($_FILES['upload']['tmp_name'])) {
$message = 'Файл не был загружен!';
include 'error.html.php';
exit();
}
if (isset($_FILES['upload'])) {
if(preg_match('/^image\/p?jpeg$/i', $_FILES['upload']['type'])) {
$ext = '.jpg';
}
else
{
$message = 'Пожалуйста, отправьте изображение в формате JPEG.';
include 'error.html.php';
exit();
}
$filename = '/WebPages/' . time() . $_SERVER['REMOTE_ADDR'] . $ext;
if (!is_uploaded_file($_FILES['upload']['tmp_name']) or !copy($_FILES['upload']['tmp_name'], $filename)) {
$message = "Не удалось сохранить файл под именем $filename!";
include 'error.html.php';
exit();
}
}
}
После отправки формы
!is_uploaded_file($_FILES['upload']['tmp_name'])
возвращает TRUE - файл не загрузился.
В php.ini настройки:
file_uploads=On
upload_tmp_dir=/tmp
upload_max_filesize=16M
Где копать?