Отправляет email-рассылки с помощью сервиса Sendsay

WebDix советует...

  Все выпуски  

WebDix советует... Совет #73


[php] Короткие скрипты-3. Upload

Если в прошлый раз мы узнавали размер файла, то сегодня будет опубликован короткий скрипт, который позволит загрузить файл на сервер.

Страничка HTML с которой посылается запрос:

<form enctype="multipart/form-data" action="/upload.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="30000">
Send this file: <input name="userfile" type="file">
<input type="submit" value="Send File">
</form>

 А вот скрипт, который уже собссна обработает валидность файла, и закачает при удовлетворении условий:

<?php
$uploaddir 
'/var/www/uploads/';
if (
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir 
    
$_FILES['userfile']['name'])) {
    print 
"File is valid, and was successfully uploaded.";
} else {
    print 
"There some errors!";
}
?> 

Описание:

  • $_FILES['userfile']['name'] - оригинальное имя файла, такое, каким его видел пользователь, выбирая файл;
  • $_FILES['userfile']['type'] - mime/type файла, к примеру, может быть image/gif; это поле полезно сохранить, если Вы хотите предоставлять интерфейс для скачивания загруженных файлов;
  • $_FILES['userfile']['size'] - размер загруженного файла;
  • $_FILES['userfile']['tmp_name'] - полный путь к временному файлу на диске;
  • $_FILES['userfile']['error'] - Начиная с версии 4.2.0, содержит код ошибки, который равен 0, если операция прошла успешно.
Для PHP версии ниже 4.1.0 (Рекомендуется немедленно обновить http://www.php.net/downloads.php) этот массив называется $HTTP_POST_FILES. Не стоит забывать, что в отличие от $_FILES этот массив не является суперглобальным и при обращении к нему, к примеру, из функции, необходимо явно указывать global $HTTP_POST_FILES;

Если в настройках Вашего сервера register_globals=on, будут созданы дополнительные переменные вида $userfile_name, $userfile_type, $userfile_size… Учитывая, что, начиная с версии 4.2.0, в настройках по умолчанию register_globals=off использования этих переменных не рекомендовано, даже если они определены. Лучший способ получения информации о загружаемых файлах - использовать массив $_FILES.

 Взято с forum.codenet.ru

На этом сегодня всё. До завтра! 

Nikitar

PS. У вас есть вопрос, связанный с веб-дизайном, flash-анимацией или photoshop'ом? Задайте мне его по мылу, и я вам отвечу либо лично, либо направлю к специалистам, которые с радостью ответят на ваш вопрос. Можно писать прямо вот отсюда: http://webdix.ru/konkakt.html

 WebDix.ru - сайт журнала о веб-дизайне WebDix

WebDix #15 - скачать выпуск журнала

RusForumz.com - форум о веб-дизайне

В избранное