Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB58.7670
BTC/USD0.0000
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 23.04.2010, 20:47   #1
cjtraff
Ебланнед
 
Регистрация: 20.08.2007
Сообщений: 377
Бабло: $29620
По умолчанию Проверка JPG на валидность - как?

В общем такая ботва получилась
Есть больше ляма джипегов, скопированых из разных мест.
С дуру сразу при копировании не проверялось что именно скачалось.
В результате в часть фалов bla-bla.jpg сохранилось 404, 403 итд. ошибки, часть недокачана итд.
Собственно вопрос - как проверить всю эту кучу?
открывать каждый в GD и проверять это конечно вариант, но долгий и имхо не самый правильный.
проверять наличие JFIF в начале вариант побыстрее, но не спасает - остануться непровереными недокачаные.

Любые идеи?
cjtraff вне форума  
Старый 23.04.2010, 20:57   #2
deschain
Senior Member
 
Аватар для deschain
 
Регистрация: 01.11.2007
Сообщений: 2,275
Бабло: $288535
По умолчанию

getimagesize($filename);
deschain вне форума  
Старый 23.04.2010, 21:01   #3
Drg
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 4,100
Бабло: $611505
По умолчанию

deschain, Правильно написал, но это вроде и есть GD
Смотря чем качал. Можно проверить на просто file_size если он больше нуля, значит картинка, в обратно случае стирать или не использовать.
С другой стороны иногда по 404 и по 403 ошибке могут быть html файлы, тогда открывать и проверять на наличие тегов.
Drg вне форума  
Старый 23.04.2010, 21:08   #4
deschain
Senior Member
 
Аватар для deschain
 
Регистрация: 01.11.2007
Сообщений: 2,275
Бабло: $288535
По умолчанию

Drg, прочитай внимательнее его пост, файл может быть jpg, но недокачанный, в таком случае, оба приведённых тобой примера не сработают.

Другого способа, кроме getimagesize я не знаю, возможно и есть что-то ещё.
deschain вне форума  
Старый 23.04.2010, 21:57   #5
cjtraff
Ебланнед
 
Регистрация: 20.08.2007
Сообщений: 377
Бабло: $29620
ТС -->
автор темы ТС По умолчанию

да все именно так,
1. в файле с расширением jpg записан html
2. размер ненулевой в обоих случаях
getimagesize($filename); это и есть GD - читай ебический труд (
cjtraff вне форума  
Старый 23.04.2010, 22:13   #6
RedHead
Senior Member
 
Аватар для RedHead
 
Регистрация: 26.08.2008
Адрес: UA
Сообщений: 2,946
Бабло: $402755
По умолчанию

а тупо открыть и проверить первые 6 символов на "<html>" не катит?
ходя доктайп может быть первой строкой. тогда проверка на банальное вхождение регистронезависимой строки "<html>" должно хватить

гугл еще подсказал такой софт: (4пункт с низу)

ttp://cpicture.net/en/index.html

Последний раз редактировалось RedHead; 23.04.2010 в 22:24.
RedHead вне форума  
Старый 23.04.2010, 22:38   #7
LeXxiK
Senior Member
 
Аватар для LeXxiK
 
Регистрация: 03.03.2008
Сообщений: 2,249
Бабло: $257095
По умолчанию

Код:
$content=file_get_contents("1.jpg");
$zhopa=strpos($content,"</html>");
if ($zhopa) {
echo "йа не картинко";
}
работает)
LeXxiK вне форума  
Старый 23.04.2010, 22:41   #8
cjtraff
Ебланнед
 
Регистрация: 20.08.2007
Сообщений: 377
Бабло: $29620
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от RedHead Посмотреть сообщение
а тупо открыть и проверить первые 6 символов на "<html>" не катит?
не катит, ответы разные все, кастомные 404, просто 404 и все, итд.
+ это не решит проблему недокачаных.

все это на сервере так что софт этот не катит.
cjtraff вне форума  
Старый 23.04.2010, 22:43   #9
cjtraff
Ебланнед
 
Регистрация: 20.08.2007
Сообщений: 377
Бабло: $29620
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от LeXxiK Посмотреть сообщение
Код:
$content=file_get_contents("1.jpg");
$zhopa=strpos($content,"<html>");
if ($zhopa) {
echo "йа не картинко";
}
тока чё-то не работает))
спасибо, добрый человек ))))))))

if ($zhopa !== false) так заработает твой код
cjtraff вне форума  
Старый 24.04.2010, 01:06   #10
3xmaster
было дело... ;)
 
Регистрация: 18.05.2009
Сообщений: 22
Бабло: $4050
По умолчанию

Эта.. На винде?
Не автоматом, но может сгодится.
Вариант1. В тоталкомандире - ctrl+shift+F1 в папке с пикчами. А если к нему притулить плаг с shelldetails ("файлинфо" вроде он) - то и отсортировать можно (чтобы скопом удалить)

Вариант2 - смотрелкой с превюхами (ирфанвивер, например по "Т") почти тоже самое.
3xmaster вне форума  
Закрытая тема



Опции темы
Опции просмотра