Лаба № 3 «изучение Приемов Работы С Multipart-Формами» По Программированию (Шурыгин В. Н
.).docМосковский государственный университет печати
Кафедра информационных систем
Программирование на PHP
Лабораторная работа № 3
Изучение приемов работы с multipart-формами
Москва 2010
Тема работы: Изучение приемов работы с multipart-формами.
Цель работы: Изучить приемы загрузки файла на сервер через пользовательскую форму.
Текст программы:
<head>
<title>Загрузка файлов на сервер</title>
</head>
<body>
<?php
$path=GetCWD()."\loadfiles";
if(!file_exists($path))
die("<b>Пожалуйста, создайте папку <font color=red>".$path."</font> и <a href=?> повторите попытку загрузить файл</a></b>");
if($_POST['copy']!=1)
{
if(file_exists($path.chr(47)."tmp".$_POST['FileName']))
unlink($path.chr(47)."tmp".$_POST['FileName']);
if(empty($_FILES['UserFile']['tmp_name']))
echo "<form name='form1' 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
{
if(file_exists($path.chr(47).$_FILES['UserFile']['name']) && $_POST['copy']!=1)
{
echo "<form name='form2' method=POST>Загружаемый файл уже есть на сервере,вам следует его переименовать .</b><hr><center><a href=?>Загрузить файл!</a></center>";
$FileName=$_FILES['UserFile']['name'];
$FileType=$_FILES['UserFile']['type'];
$FileSize=$_FILES['UserFile']['size'];
echo "<br><input type='hidden' name='FileName' value=$FileName><input type='hidden' name='FileType' value=$FileType><input type='hidden' name='FileSize' value=$FileSize></form>";
copy($_FILES['UserFile']['tmp_name'],$path.chr(47)."tmp".$_FILES['UserFile']['name']);
}
else
{
if(!copy($_FILES['UserFile']['tmp_name'],$path.chr(47).$_FILES['UserFile']['name']))
echo "Ошибка!<br>";
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>";
}
}
}
else
{
if(!copy($path.chr(47)."tmp".$_POST['FileName'],$path.chr(47).$_POST['FileName']))
echo "Ошибка!<br>";
else
{
echo "<center><b>Файл \"<font color=red>".$_POST['FileName']."</font>\" успешно загружен на сервер!</font></b> </center><hr>Тип файла: <b>".$_POST['FileType']."</b><br>Размер файла: <b>".round($_POST['FileSize']/1024,2)." кб.</b><hr><center><a href=?>Загрузить еще один файл!</a></center>";
unlink($path.chr(47)."tmp".$_POST['FileName']);
}
}
?>
</body>
</html>