Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.08.2012, 09:46   #1
gunsoy
Форумчанин
 
Регистрация: 30.12.2010
Сообщений: 280
Вопрос Выводит пустую картинку при использовании в src http://

Здравствуйте
Написал класс для изменения размеров изображения Класс запускается из скрипта image.php который вставляется в тег img с параметром path содержащий путь к картинке
<img src='image.php?path=http://mysite.ru/image/im.jpg' />

Проблема в том что если path имеет вид http://.... То на экран выводится пустая картинка

Сам класс работает нормально если указывать относительный путь к картинке находящийся на моем сервере

Подскажите из-за чего это может быть?

Спасибо за внимание
gunsoy вне форума Ответить с цитированием
Старый 26.08.2012, 10:53   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

нужно смотреть что за класс.. может он автоматом дописывает http?
ADSoft вне форума Ответить с цитированием
Старый 26.08.2012, 11:15   #3
gunsoy
Форумчанин
 
Регистрация: 30.12.2010
Сообщений: 280
По умолчанию

Класс самописный Автоматом ничего не дописывает

<img src='image.php?path=http://mysite.ru/image/im.jpg&amp;size=100' />

PHP код:
<?php
class image_size
{
private 
$file_size;
private 
$image_size;
private 
$image_properties=array();
private 
$image;
function 
__construct($file$size)
{
$this->file_size=filesize($file);
$this->image_properties=getimagesize($file);
switch(
$this->image_properties[2])
{
case 
IMAGETYPE_JPEG:
$this->image=imagecreatefromjpeg($file);
break;
case 
IMAGETYPE_PNG:
$this->image=imagecreatefrompng($file);
break;
case 
IMAGETYPE_GIF:
$this->image=imagecreatefromgif($file);
break;
default:
die(
"Не удолось создать изображение");
}
$this->image_size=$this->createNewImage($size);
}

private function 
createNewImage($size)
{
$width=$this->image_properties[0];
$height=$this->image_properties[1];
if(
$width>$size)
{
$newW=$size;
$newH floor$height * ( $size $width ) );
$copy=imagecreatetruecolor($newW$newH);
imagecopyresampled($copy$this->image0000$newW$newH$width$height);
imagedestroy($this->image);
$this->image=$copy;
}
}


public function 
getImage()
{
switch(
$this->image_properties[2])
{
case 
IMAGETYPE_JPEG:
header("Content-Type: image/jpeg");
imagejpeg($this->image);
break;
case 
IMAGETYPE_PNG:
header("Content-type: image/png");
imagepng($this->image);
break;
case 
IMAGETYPE_GIF:
header("Content-type: image/gif");
imagegif($this->image);
break;
default:
die(
"Не удалось создать изображение");
}
}
}
?>
gunsoy вне форума Ответить с цитированием
Старый 26.08.2012, 11:51   #4
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

как вариант - попробуй так же абс путь к скрипту указать
Код:
http://image.php?...
ADSoft вне форума Ответить с цитированием
Старый 26.08.2012, 13:16   #5
gunsoy
Форумчанин
 
Регистрация: 30.12.2010
Сообщений: 280
По умолчанию

Все тоже самое

Так работает:
<img src='http://image.php?path=im.jpg&amp;size=100' />

Так не работает:
<img src='http://image.php?path=http://mysite.ru/image/im.jpg&amp;size=100' />
gunsoy вне форума Ответить с цитированием
Старый 26.08.2012, 13:38   #6
gunsoy
Форумчанин
 
Регистрация: 30.12.2010
Сообщений: 280
По умолчанию

del del del del

Последний раз редактировалось gunsoy; 26.08.2012 в 13:42.
gunsoy вне форума Ответить с цитированием
Старый 26.08.2012, 13:47   #7
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Не понял пока почему – но у меня в вашем коде ситуацию исправило размещение в image.php перед определением класса error_reporting(0):
PHP код:
<?php
error_reporting
(0);
class 
image_size
{
После этого скрипт начал работать и с абсолютными путями, и с относительными.
Хотя даже при error_reporting(E_ALL) никаких ошибок не выводится – а картинки нет.
И заголовки вроде одинаковые.
Andkorol вне форума Ответить с цитированием
Старый 26.08.2012, 13:56   #8
gunsoy
Форумчанин
 
Регистрация: 30.12.2010
Сообщений: 280
По умолчанию

Cпасибо за ответ Мне тоже помогло
gunsoy вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как переприсвоить значение src тега iframe при клике на ссылку ? platinum355 JavaScript, Ajax 1 28.06.2011 16:42
Как переприсвоить значение src тега iframe при клике на ссылку ? platinum355 HTML и CSS 2 27.06.2011 21:03
Кто поможет изменить скрипт:<script src="http://up4um.com/js/widget.js" F23 Помощь студентам 0 15.02.2011 21:40
Как получить картинку при наведении на другую картинку (ссылку) seeker1 JavaScript, Ajax 8 04.07.2010 19:42
как убрать сообщение HTTP:404 при использовании IdHTTP(InDy9) Пепел Феникса Работа с сетью в Delphi 18 01.04.2009 19:40