Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Ограничение по Mime-type

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
valkiriy
Отправлено: 03 Мая, 2013 - 05:18:46
Post Id


Гость


Покинул форум
Сообщений всего: 66
Дата рег-ции: Июнь 2012  


Помог: 0 раз(а)

[+]


Доброе утро,
дорабатываю скриптик галереи и встала задача как ограничить файлы по формату
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. if (isset($_POST["submit"]) and $_POST["submit"] == 'upload')
  3. {
  4. $uploaddir = './img/screenshots/';
  5. $uploadfile = $uploaddir.basename($_FILES['uploadfile']['name']);
  6. if (copy($_FILES['uploadfile']['tmp_name'], $uploadfile))
  7. {
  8. echo "<h3>Файл успешно загружен на сервер</h3>";
  9. }
  10. else { echo "<h3>Ошибка! Не удалось загрузить файл на сервер!</h3>"; exit; }
  11. unset($_POST["submit"]);
  12. }
  13. else
  14. {
  15. ?>
  16. <FORM ENCTYPE="multipart/form-data" ACTION="" METHOD="POST">
  17. <input type="File" name="uploadfile" size="30" maxlength="255">
  18. <INPUT TYPE="submit" name="submit" VALUE="upload">
  19. </FORM>
  20. <?php
  21. }
  22. ?>

пробовал так:
PHP:
скопировать код в буфер обмена
  1. if (isset($_POST["submit"]) and $_POST["submit"] == 'upload' and $_FILES['uploadfile']['type'] ==  'image/jpeg' or 'image/png')

когда писал - особо не надеялся... ну так и получилось, что нечего не получилось... ибо $_FILES['uploadfile']['type'] не определена... подскажите какие нибудь варианты?
 
 Top
nkl
Отправлено: 03 Мая, 2013 - 09:43:43
Post Id



Посетитель


Покинул форум
Сообщений всего: 305
Дата рег-ции: Янв. 2012  


Помог: 1 раз(а)




$_FILES['uploadfile']['name'], отрезаешь последние 4 символа и свераешь со строкой которая тебе нужна, например 'jpg', если не совпадает, то в топку его, если да, то загружаем. Как-то так.
 
 Top
valkiriy
Отправлено: 03 Мая, 2013 - 11:39:58
Post Id


Гость


Покинул форум
Сообщений всего: 66
Дата рег-ции: Июнь 2012  


Помог: 0 раз(а)

[+]


да уже попробовал и через pathinfo() получить расширение и сверить с строками и через explode () сверить строку после точки, но потерпел кучу неудач... просто хочу поставить ограничение на определенные расширения файлов... есть еще предложения?
 
 Top
snikers987
Отправлено: 03 Мая, 2013 - 11:56:21
Post Id



Участник


Покинул форум
Сообщений всего: 1239
Дата рег-ции: Сент. 2011  
Откуда: Крым


Помог: 25 раз(а)




PHP:
скопировать код в буфер обмена
  1.  
  2. $rgAllowedExt = array('gif', 'jpg', 'png');
  3. $rgPathinfo = pathinfo($sFilename);
  4. if(in_array($rgPathinfo['extension'], $rgAllowedExt)){
  5.   //допустимый тип
  6. }
  7.  


_http://www.php.net/manual/ru/ref.fileinfo.php

(Отредактировано автором: 03 Мая, 2013 - 12:06:33)



-----
Когда всматриваешься в тёмную бездну, учти, что кто-то может смотреть на тебя из неё...
 
My status
 Top
valkiriy
Отправлено: 03 Мая, 2013 - 12:27:19
Post Id


Гость


Покинул форум
Сообщений всего: 66
Дата рег-ции: Июнь 2012  


Помог: 0 раз(а)

[+]


Благодарю все работает) а я дырявая голова не додумался засунуть в массив)
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB