|
|
|
| Доброго времени суток всем!
Есть некая проблема:
В некоем файле, в котором находится форма, я подключаю внешний файл, который рисует изображение, что-то типа анти-робота. Конечные строки которого выглядят:
header('Content-type: image/jpeg');
imagejpeg($img);
|
Подключаю:
include 'create_image.php'
|
А в ответ в браузер ровно посередке выводится изображение по умолчанию, т.е. то, что обычно случается если браузер не найдет файл изображения. Никаких других данных нету, формы, текста и прочей информации: голая страница, посередине которой вот эта ерундень. | |
|
|
|
|
|
|
|
для: Рафик
(02.09.2007 в 23:09)
| | надо через img а не код | |
|
|
|
|
|
|
|
для: bronenos
(02.09.2007 в 23:14)
| | Простите, но не совсем понятно. Что делает по сути imagejpeg().
Так правильно <img>imagejpeg()</img>? | |
|
|
|
|
|
|
|
для: Рафик
(02.09.2007 в 23:17)
| | Или в create_image.php
imagejpeg($img, 'images/name.jpeg');
|
а выводить:
<img src='image/name.jpeg'></img> | |
|
|
|
|
|
|
|
для: Рафик
(02.09.2007 в 23:17)
| | Напишите, вместо
include 'create_image.php'
|
так
echo "<img src='create_image.php'>";
|
| |
|
|
|
|
|
|
|
для: Drago
(02.09.2007 в 23:24)
| | Рисунок не показывает. | |
|
|
|
|
|
|
|
для: Рафик
(02.09.2007 в 23:30)
| | Что происходит если к файлу обраться напрямую через броузер? ( имею ввиду который генерирует картинку ) | |
|
|
|
|
|
|
|
для: Poison
(02.09.2007 в 23:59)
| | Я тоже сначала так хотел, но хотелось бы поэлегантнее! | |
|
|
|
|
|
|
|
для: Рафик
(02.09.2007 в 23:09)
| | Посмотрите исходный текст страницы - что там? | |
|
|
|
|
|
|
|
для: cheops
(03.09.2007 в 12:09)
| | <img src='create_image.php'></img> | |
|
|
|
|
|
|
|
для: Рафик
(03.09.2007 в 20:01)
| | НЕ ПОНЯТНО но на localhost через Editor все OK, картинка отображается. Я думал, что проблема в браузере, потому что пользуюсь Opera. Запустил в Internet Explorer тоже самое. Может ftp менеджер не до конца качает файлы на сервер, хотя это глупое предположение? | |
|
|
|
|
|
|
|
для: Рафик
(03.09.2007 в 20:01)
| | Посмотрел код который генерится на странице в локале, тоже:
<img src='create_image.php'></img> | |
|
|
|
|
|
|
|
для: Рафик
(03.09.2007 в 20:08)
| | Посмотрел свойства "пустого рисунка" url - 'create_image.php' 0x0 пикселей, размер 8.3 Кб, формат png! PNG потому что использовал imagepng! | |
|
|
|
|
|
|
|
для: Рафик
(03.09.2007 в 20:37)
| | Я тоже сначала так хотел, но хотелось бы поэлегантнее!
Нет. Вы мне все-таки ответе что происходит если открыть файл create_image.php через строку запроса? | |
|
|
|
|
|
|
|
для: Poison
(03.09.2007 в 21:23)
| | Нет. Вы мне все-таки ответе что происходит если открыть файл create_image.php через строку запроса?
Пустой рисунок прямо по середке страницы! | |
|
|
|
|
|
|
|
для: Рафик
(04.09.2007 в 10:09)
| | Может у меня на хостере отключена библиотека gd? | |
|
|
|
|
|
|
|
для: Рафик
(04.09.2007 в 10:09)
| | Пустой рисунок прямо по середке страницы!
Вот с этого им надо было начинать;)
Теперь в попробуйте убрать заголовок header('image/png'); | |
|
|
|
|
|
|
|
для: Poison
(04.09.2007 в 10:46)
| | Ан - нет, крепкий орешек. Извините, что пропал - не было выхода в инет?
Сделал как посоветовали, пока все также! | |
|
|
|
|
|
|
|
для: Рафик
(06.09.2007 в 21:36)
| | Попробуйте для начала поработать с GIF-рисунком.
PNG-тип поддерживается не каждым браузером. | |
|
|
|
|
|
|
|
для: Trianon
(06.09.2007 в 23:14)
| | Попробую gif. Узнавал на хостинге. Сказали библиотека подключена, все в порядке. | |
|
|
|
|
|
|
|
для: Trianon
(06.09.2007 в 23:14)
| | Пробовал GIF. Что за напасть - ничего не помогает.
В учебнике прочитал, что header нужно применять только если никаких html данных не передавалось. Может это как-то поможет? | |
|
|
|
|
|
|
|
для: Рафик
(06.09.2007 в 23:28)
| | Никаких данных вообще .
Откуда в скрипте, формирующем изображение, взяться HTML-данным ?
http://softtime.ru/forum/read.php?id_forum=1&id_theme=14203 | |
|
|
|
|
|
|
|
для: Trianon
(07.09.2007 в 08:31)
| | Я имею в виду та страница которая содержит тег img:
. . .
<p align='center' style='color: #800040'>макс-ый размер <b>10 Кб</b><br>
Рекомендуемая длина и ширина: 150х100 или 100х150<br>
Допускаются следующие форматы <br>файлов: <b>bmp, jpg, jpeg, gif, png</b></p>
<img src='create_image.php'></img><br>
<input name='inputcode' type='text' title="Введите контрольную фразу">
. . .
|
А вообще мне кажется не в этом проблема. Если у кого есть какие-либо предложения - напишите пожалуйста. Спасибо за участие! | |
|
|
|
|
|
|
|
для: Рафик
(08.09.2007 в 18:21)
| | скрипт (допустим create_html.php) фрагмент которого Вы только что привели , формирующий страницу с html-кодом , не будет сам формировать изображение. Он в этом самом коде создает тег со ссылкой, по которой браузер вызывает другой скрипт create_image.php для этой цели.
скрипт create_image.php занимается только формированием изображения и никаких тегов не выводит.
Это два разных скрипта. | |
|
|
|
|
|
|
|
для: Trianon
(08.09.2007 в 18:40)
| | Все-таки какой выход? | |
|
|
|
|
|
|
|
для: Рафик
(08.09.2007 в 21:34)
| | Привожу полный код create_image.php:
$size_x = 200;
$size_y = 75;
$code = 'secret';
$space_per_char = $size_x / (strlen($code)+1);
$img = imagecreatetruecolor($size_x, $size_y);
$background = imagecolorallocate($img, 255, 255, 255);
$border = imagecolorallocate($img, 128, 128, 128);
$colors[] = imagecolorallocate($img, 128, 64, 192);
$colors[] = imagecolorallocate($img, 192, 64, 128);
$colors[] = imagecolorallocate($img, 108, 192, 64);
imagefilledrectangle($img, 1, 1, $size_x - 2, $size_y - 2, $background);
imagerectangle($img, 0, 0, $size_x - 1, $size_y - 1, $border);
for ($i = 0; $i < strlen($code); $i++) {
$color = $colors[rand(0, count($colors)-1)];
imagettftext($img, 28 + rand(0, 8), -20 + rand(0, 40), ($i + 0.3) * $space_per_char, 50 + rand(0, 10), $color, 'arial.ttf', $code{$i});
}
imageantialias($img, true);
for ($i = 0; $i < 1000; $i++) {
$x1 = rand(5, $size_x - 5);
$y1 = rand(5, $size_y - 5);
$x2 = $x1 - 4 + rand(0, 8);
$y2 = $y1 - 4 + rand(0, 8);
imageline($img, $x1, $y1, $x2, $y2, $colors[rand(0, count($colors)-1)]);
}
header('Content-type: image/gif');
imagegif($img);
|
Может это как проянить ситуцию! | |
|
|
|
|
|
|
|
для: Рафик
(08.09.2007 в 21:47)
| | Файл create_image.php должен начинаться с символов <?php
И заканчиваться символами ?>
У Вас этого не видно. | |
|
|
|
|
|
|
|
для: Trianon
(08.09.2007 в 22:06)
| | Просто я опустил их. Они есть. В чем же проблема?
Может функция imagetruecolor или еще какая-либо не работает. Я поэксперементирую. Может ситуация прояснится. Уже замучился с этим. Как в болоте застрял. | |
|
|
|
|
|
|
|
для: Рафик
(11.09.2007 в 12:36)
| | а что пишет на хостинге phpinfo() о графической библиотеке? | |
|
|
|
|
|
|
|
для: Trianon
(11.09.2007 в 13:00)
| | gd
GD Support enabled
GD Version bundled (2.0.28 compatible)
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.2.1
GIF Read Support enabled
GIF Create Support enabled
JPG Support enabled
PNG Support enabled
WBMP Support enabled
XBM Support enabled | |
|
|
|
|
|
|
|
для: Рафик
(13.09.2007 в 20:39)
| | Ответьте пожалуйста, очень нужно! | |
|
|
|
|
|
|
|
для: Рафик
(13.09.2007 в 20:39)
| | Ответьте пожалуйста, очень нужно! | |
|
|
|