помогите доработать простой скрипт

R
На сайте с 15.03.2012
Offline
13
653

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

Вот скрипт:

upload.php

<?PHP

// Каталог, в который мы будем принимать файл:

$uploaddir = 'название папка';

$uploadfile = $uploaddir.basename($_FILES['uploadfile']['name']);

// Копируем файл из каталога для временного хранения файлов:

if (copy($_FILES['uploadfile']['tmp_name'], $uploadfile))

{

echo "<h3>Файл успешно загружен на сервер</h3>";

}

else { echo "<h3>Ошибка! Не удалось загрузить файл на сервер!</h3>"; exit; }

// Выводим информацию о загруженном файле:

echo "<h3>Информация о загруженном на сервер файле: </h3>";

echo "<p><b>Оригинальное имя загруженного файла (скопировать то, что справа):<font color=green size=5> http://сайт.ру/папка/название".$_FILES['uploadfile']['name']."</b></font></p>";

echo "<p><b>Mime-тип загруженного файла: ".$_FILES['uploadfile']['type']."</b></p>";

echo "<p><b>Размер загруженного файла в байтах: ".$_FILES['uploadfile']['size']."</b></p>";

echo "<p><b>Временное имя файла: ".$_FILES['uploadfile']['tmp_name']."</b></p>";

?>

Форма для добавления файла такая

<form action='upload.php' method='post' enctype='multipart/form-data'>

<input type='file' name='uploadfile'>

<input type='submit' value='Закачать файл'></form>

Y
На сайте с 22.01.2008
Offline
137
#1

ну как самое простое - взять последние 4 символа и если они в нижнем регистре не равны ".pdf", то заканчиваем работу

Coolmac
На сайте с 08.09.2011
Offline
60
#2

$name = $_FILES['uploadfile']['name'];

$valid = array("pdf","doc");

if(in_array(pathinfo($name, PATHINFO_EXTENSION), $valid)){

/*что то там дальше делаем*/

}else{

echo "Неверный формат";

}

Доступные vps/ds с грамотной тех. поддержкой (https://my.friendhosting.net/pl.php?11304)
palladin_jedi
На сайте с 13.07.2010
Offline
71
#3
rudnik:
Необходимо чтоб он закачивал файлы только определенного вида,например pdf а остальные отсеевал, выводя инфу что файл не того расшир.

Просто организовать проверку по $_FILES["file"]["type"]

Что-то вроде

if($_FILES['file']['type'] == "application/pdf")

{
//code...
}
else {
echo "Wrong Format";
}

P.S. Парсер PHP-кода на форуме жрёт квадратные скобки, будьте внимательнее. ;)

Сайт о web-разработке и прочем (http://seazo.net)||Продвижение статьями под Google (http://short.seazo.net/ght4zf) Бесплатные консультации рефералам Sape (http://www.sape.ru/r.SWfwWOblBo.php) PHP и JS скрипты на заказ, создание сайтов с нуля и на CMS.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий