|
|
|
| HTML - форма для загрузки файлов на сервер
<form enctype='multipart/form-data' action=handler.php method=post>
Файл : <input type=file name=filename><br>
<input type=submit value=Отправить>
</form>
.................................................................................................................................
Обработчик данных из HTML - формы
<?php
// проверяем содержимое параметра filename, передоваемого обработчику,
// из формы в файле index.php
if(isset($_POST['filename'])) $filename = POST($_FILES['filename']);
else $filename = "";
// еслм обработчику переданно пустое поле filename
// или содержащее пробелы
// игнорируем обращение, в противном случае выводим ссылку на файл
if (!empty($filename))
{
// формируем масив разрешенных к публикации файлов
$extentions = array(".gif",".txt",".jpeg",".jpg");
// если расширение файла совпадает с одним из масивов $extentions,
// закачиваем файл на сервер
if(in_array(strrchr($_FILES['attach']['name'], "."),$extentions))
{
// если копирование произведенно удачно, выводим ссылку на файл
if (copy($filename, $_FILES['filename']['name']))
echo "<a href=".$_FILES['filename']['name'].">Посмотреть</a>";
else
echo "Ошибка при передаче файла на сервер.";
}
else
{
// если расширение файла имеет не допустимое расширение,
// выводим предупреждение и ссылку возврата
echo "файл имеет недопустимое расширение.";
echo "<a href=# onClick='history.back()'>Вернутся к отправке</a>";
exit();
}
}
else
{
// если переменная $filename пуста, просим повторить загрузку файла
echo "Имя файла не введено, повторите пожалуйста операцию.<br>";
echo "<a href=# onClick='history.back()'>Вернутся к отправке</a>";
exit();
}
?>
..........................................................................................................................................
Проблема такая: при передаче файла обработчику (с нужными параметрами, разрешением, объемом), обработчик выдает что "Имя файла не введено, повторите пожалуйста операцию"
Подскажите пожалуйста как избежать проблемы, или в чем она может заключатся. Может конфигурационный файл у меня не так настроен?
За ранее благодарен!!! | |
|
|
|
|
|
|
|
для: oleg29.ru
(12.05.2009 в 16:34)
| | Читать обязательно, чтобы не было такого впредь:
if(isset($_POST['filename'])) $filename = POST($_FILES['filename']);
|
| |
|
|
|
|
|
|
|
для: sim5
(12.05.2009 в 16:52)
| |
if(isset($_POST['filename'])) $filename = trim($_POST['filename']);
|
не работает | |
|
|
|
|
|
|
|
для: oleg29.ru
(12.05.2009 в 17:34)
| | Я вам вроде бы дал ссылку для изучения? Изучите сперва, думаю, после этого, вы более не будете приводить этих доводов: if(isset($_POST['filename']))..... | |
|
|
|
|
|
|
|
для: sim5
(12.05.2009 в 17:39)
| | Большое спасибо за подсказку ошибки, но это доводы не мои, а людей которые написали книгу "PHP Народные советы". За ссылку благодарю, очень полезна. | |
|
|
|