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

Форум PHP

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

 

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

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

тема: Проблема с getimagesize или с IE??
 
 автор: Dred   (05.02.2009 в 18:37)   письмо автору
 
 

У меня есть програмка вывода уменьшенного размера картинки с функцией
getimagesize:

preg_match('|<img src=(.+?)align|is',$content, $reks)
$size=getimagesize($reks[1]); $width=$size[0]; $height=$size[1];
$koef=$width/$height; $width=100; $height=$width/$koef;
echo "<img src=".$reks[1]." border=0 width=".$width." height=".$height." hspace=5 align=left>

т.е. определение в тексте картинки, ее размеров, уменьшение и вывод..
Проблема в том, что в Денвере работает, разместил на хостинге - выводит вместо картинки тонкую полоску длиной 100 пикселей, т.е. выводит только значение переменной $width=100..
проверил значение переменных после определение размеров картинки (вторая строка)..
Оказалось, что $width и $height не имеют никаких значений - пусты.. $reks[1] содержит путь:
img/image.jpg
записал по другому:
$size=getimagesize("img/image.jpg"); $width=$size[0]; $height=$size[1]; .....
все работает - выводит картинку...
Но больше всего меня убило то, что не выводит картинку только в Internet Explorere (6, 7 версия - без разницы и только на хостинге, на Денвере работает).. В Опере работает нормально.. Хотя причем тут браузеры, когда php выполняется на сервере??
В чем может быть проблема??

  Ответить  
 
 автор: sim5   (05.02.2009 в 18:55)   письмо автору
 
   для: Dred   (05.02.2009 в 18:37)
 

А зачем такой дикий способ - парсить готовый тег чтобы узнать параметры изображения (путь, размеры)? Зачем их тогда узнавать, если они уже прописаны в теге?

  Ответить  
 
 автор: Dred   (05.02.2009 в 19:05)   письмо автору
 
   для: sim5   (05.02.2009 в 18:55)
 

В теге <img> прописаны переменны $width и $height, содержащие новые значения (уменьшенные) рисунка..
предварительно реальные значения рисунков не известны.. рисунки могут быть разные, разных размеров и разных названий... вот и необходимо осуществлять парсинг..

  Ответить  
 
 автор: sim5   (05.02.2009 в 19:06)   письмо автору
 
   для: Dred   (05.02.2009 в 19:05)
 

Вы от куда берете этот тег? Как туда попали эти переменные? И почему они пустые, если еще требуется такой геморрой для проверки их?

  Ответить  
 
 автор: Dred   (05.02.2009 в 19:09)   письмо автору
 
   для: sim5   (05.02.2009 в 19:06)
 

$content - содержит текст с рисунками..
нахожу рисунок:
preg_match('|<img src=(.+?)align|is',$content, $reks)
узнаю размеры:
$size=getimagesize($reks[1]); $width=$size[0]; $height=$size[1];
расчитываю новые значения:
$koef=$width/$height; $width=100; $height=$width/$koef;
вывожу рисунок уменьшенных размеров:
echo "<img src=".$reks[1]." border=0 width=".$width." height=".$height." hspace=5 align=left>

  Ответить  
 
 автор: sim5   (05.02.2009 в 19:15)   письмо автору
 
   для: Dred   (05.02.2009 в 19:09)
 

А вы автор этого контента? Кто же вас заставляет делать такое - вставлять в контент неопределенные данные, дабы потом изголяться над ним? А не проще ли подготоваливать его (контент, если это действительно необходимо, а возможно и нет?) таким образом, чтобы он уже содержал все готовое для вывода. Ваш контент и не будет иметь ничего, кроме имен переменных, в противном случае. Подумайте сами когда и почему.

  Ответить  
Rambler's Top100
вверх

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