Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> при upload картинки проверить что это картинка 
:(
    Опции темы
kolombo777
Дата 15.11.2008, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 14.9.2008

Репутация: нет
Всего: нет



при upload картинки проверить что это картинка,
а то ведь могут php-shell загрузить.
можно проверить по заголовку браузера mime-type,
но нельзя браузеру доверять, так как браузер
находится на стороне клиента -> заголовок mime-type можно подделать.
Значит надо проверить содержимое картинки,
как это сделать?
PM MAIL   Вверх
skyboy
Дата 15.11.2008, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



getimagesize -> ['MIME']
PM MAIL   Вверх
kolombo777
Дата 15.11.2008, 15:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 14.9.2008

Репутация: нет
Всего: нет



а может нужно использовать библиотеку gd ?
Воспользоваться функцией imagecreatefrom... 
например imagecreatefromjpeg если вернула ошибку то это не имейдж или поврежденный имейдж 
PM MAIL   Вверх
awers
Дата 15.11.2008, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1465
Регистрация: 22.3.2006
Где: Россия, Таганрог

Репутация: 21
Всего: 31



согласен с kolombo777

Код

 $size = getimagesize($src);
 if ($size === false) return false;


Это сообщение отредактировал(а) awers - 15.11.2008, 17:01
PM MAIL WWW ICQ Skype   Вверх
ksnk
Дата 15.11.2008, 19:05 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Не все так просто, imho. 
GD плохо относится к анимированным гифам, хотя, конечно, открыть позволит. 
Можно еще нарваться на многомегабайтную картинку, для которой нету рессурсов у этого GD для того, чтобы ее открыть.
swf, к примеру, тоже своего рода картинка...

Есть еще один не очень надежный, но более универсальный способ - mime_content_type. Это какой-то автоматический определятель формата файла по сигнатуркам в самом файле.  Достаточно умно, быстро. 


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Pentium133
Дата 18.11.2008, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 17.5.2007

Репутация: 0
Всего: 1



Посмотрите тут http://habrahabr.ru/blogs/php/44615/ первую и вторую части статьи.
Тема раскрыта полностью.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0695 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.