Практический пример Upload файлов через веб
Автор: manlix.ru
Цели:
1) Написать форму.
2) Написать скрипт, обрабатывающий форму.
3) Запихнуть 1 и 2 цель в один файл.
Начнем:
<?php
# ВАЖНАЯ ИНФОРМАЦИЯ!
# В вашем
"php.ini" должны быть следующие три параметра:
#
#
file_uploads = On
#
# ^ включаем поддержку загружаемых
файлов.
#
# upload_tmp_dir =
ПОЛНЫЙ_ПУТЬ_ДО_ПАПКИ_ГДЕ_БУДУТ_ХРАНИТЬСЯ_ЗАГРУЖАЕМЫЕ(ВРЕМЕННЫЕ)_ФАЙЛЫ
#
# ^ Например: upload_tmp_dir = d:/server/php/uploads
#
# и
#
# upload_max_filesize = 2M
#
#
^ Максимальный размер загружаемых файлов (в нашем случаем 2
МБ).
// Куда сохраним файл?
// Давайте в папке с
этим скриптом,
// создадим папку "files", туда-то и будем
// сохранять все загружаемые файлы.
$path=GetCWD()."/files";
// Проверяем на существование папку
$path
if(!file_exists($path))
die("<b>Пожалуйста, создайте папку
<font color=red>".$path."</font> и <a
href=?>повторите попытку загрузить
файл</a>.</b>");
// Выводим форму для загрузки файла.
if(empty($_FILES['UserFile']['tmp_name']))
echo
"<form method=post
enctype=multipart/form-data>
Выберите файл: <input
type=file name=UserFile>
<input type=submit
value=Отправить>
</form>";
// Если файл не загружен по каким-то
причинам, выводим ошибку.
elseif(!is_uploaded_file($_FILES['UserFile']['tmp_name']))
die("<b><font color=red>Файл не
был загружен! Попробуйте <a href=?>повторить
попытку</a>!</font></b>");
// Если файл удачно загружён на сервер,
делаем вот что...
else
{
// Переносим загружённый файл в папку
$path
if(@!copy($_FILES['UserFile']['tmp_name'],$path.chr(47).$_FILES['UserFile']['name']))
// Если не удалось перенести файл,
выводим ошибку:
die("<b><font color=red>Файл не
был загружен! Попробуйте <a href=?>повторить
попытку</a>!</font></b>");
// Если всё Ok, то выводим инфо. о
загружённом файле.
else
echo
"<center><b>Файл
"<font color=red>".$_FILES['UserFile']['name'].""</font>
успешно загружён на
сервер!</font></b></center>".
"<hr>".
"Тип файла: <b>".$_FILES['UserFile']['type']."</b><br>".
"Размер файла: <b>".round($_FILES['UserFile']['size']/1024,2)."
кб.</b>".
"<hr><center><a
href=?>Загрузить ещё один
файл!</a></center>";
}
?>
|