Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: форма file
 
 автор: localGhost   (04.03.2005 в 07:05)   письмо автору
 
 

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

   
 
 автор: Valeri   (04.03.2005 в 08:49)   письмо автору
 
   для: localGhost   (04.03.2005 в 07:05)
 

можно сделать проверку, примерно вот так

<?
$f_name 
explode(".",$_FILES['userfile']['name']);
$extension strtolower($f_name[1]);
    if (
$extension != "zip") {
    
$error .= "Не верный формат файла *.zip";
        }
?>

в этом случае пропустятся только файлы zip

   
 
 автор: localGhost   (04.03.2005 в 09:09)   письмо автору
 
   для: Valeri   (04.03.2005 в 08:49)
 

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

   
 
 автор: glsv (Дизайнер)   (04.03.2005 в 09:52)   письмо автору
 
   для: localGhost   (04.03.2005 в 07:05)
 

Ограничить выбор нельзя, но можно делать проверку не на сервере, а на клиенте с помощью JavaScript.
Например:
Ставим запуск проверки по событию нажатию на кнопку типа Submit

<input type=submit value="Отправить" onclick="checkform(); return false">    

При ее нажатиии вызывается функция checkform()

<script language='JavaScript' type='text/javascript'>
<!--
  // Функция проверки данных в форме
  function checkform()
  {
    // Флаг наличия ошибок
    err = 0;
    // Проверяем маленькое изображения
    img = escape(this.form.picture_small.value);
    if (img!="")
    {
      num = img.lastIndexOf(".")+1;
     // Вызываем для проверки расширений функцию checktypeimage(),
     // которой передаем расширений файла
     if (!checktypeimage(img.substring(num,img.length))) err = 1;
   }  
   // Если ошибок нет, то форму можно отправить
   if (!err) this.form.submit();
  }

А вот сама функция проверки

  // Проверка типов изображений, разрешенных к загрузке
  function checktypeimage(typeimg)
  {
    if ((typeimg=="jpg") || (typeimg=="gif") || (typeimg=="png") || (typeimg=="-")) return 1;
    else
    {
     alert ("Вы загружаете изображение формата "+typeimg+" \n"+
     "Использование изображения с таким расширением невозможно! \n"+
     "Вы можете загружать изображения только форматов: JPEG, GIF и PNG.");
     return 0;
    } 
  }

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования