Проблемы с графикой PHP

B
На сайте с 23.05.2006
Offline
95
615

Не могу понять в чем дело , вроде на сервере графическая библиотека подключена, но скрипт почему то выдает не картинку , а всякую ерунду типа

‰PNG  IHDRdd Њ}З PLTEяяяяЂ@яЬ¤DCнg

Даже такой код не читает , брался из учебника

<?php

$img = imageCreate(100, 100);

$black = imageColorAllocate($img, 0, 0, 0);

$white = imageColorAllocate($img, 255, 255, 255);

$orange = imageColorAllocate($img, 255, 128, 64);

$lightorange = imageColorAllocate($img, 255, 220, 164);

imageFilledRectangle($img, 0, 0, 100, 100, $white);

imageRectangle($img, 0, 0, 99, 99, $black);

imageRectangle($img, 5, 5, 94, 94, $black);

$points = Array(12,10,

20,15,

15,20);

$nump = (int) count($points)/2;

imagePolygon($img, $points, $nump, $orange);

imageLine($img, 17, 18, 27, 33, $orange);

imageLine($img, 18, 18, 28, 33, $lightorange);

imageLine($img, 19, 18, 29, 33, $orange);

imageRectangle($img, 15, 33, 80, 75, $orange);

imageFill($img, 14, 14, $lightorange);

imageFill($img, 20, 40, $lightorange);

imageString ($img, 2, 20, 40, "I'm a PHP", $black);

imageString ($img, 2, 30, 55, "image", $black);

imagePNG($img);

?>

В чем тут дело? Подскажите пожалуйста.

А
На сайте с 29.07.2003
Offline
58
#1

Браузер не знает что это картинка и рисует как текст.

Добавь HTTP заголовок

header('Content-type: image/png');

B
На сайте с 23.05.2006
Offline
95
#2
Альен:
Браузер не знает что это картинка и рисует как текст.
Добавь HTTP заголовок
header('Content-type: image/png');

Я это пробовал, вообще ошибку выдает

Warning: Cannot modify header information - headers already sent by (output started at /home2/topbet/public_html/3.php:9)

in /home2/topbet/public_html/3.php on line 23

Уже третий час бьюсь, с ума сойти можно

[Удален]
#3

Значит где-то до заголовка пробел или еще какой символ выводишь. Проверь.

vint
На сайте с 06.05.2004
Offline
209
#4

посылай хидер до начала вывода любой инфы

dkameleon
На сайте с 09.12.2005
Offline
386
#5

bestbetor,

У тебя может где-то выскакивать Варнинг или Нотис перед попыте\кой установить хидер.

Первое:

предварительно убери imagePNG($img);

Чтобы увидеть, все ли функции отрабатывают нормально без ошибок.

Второе:

Поставь header('Content-type: image/png');

самой первой строкой скрипта. Это раз.

Дизайн интерьера (http://balabukha.com/)
[Удален]
#6

У меня все работает:

img.php

<?php

header('Content-type: image/png');

$img = imageCreate(100, 100);
$black = imageColorAllocate($img, 0, 0, 0);
$white = imageColorAllocate($img, 255, 255, 255);
$orange = imageColorAllocate($img, 255, 128, 64);
$lightorange = imageColorAllocate($img, 255, 220, 164);
imageFilledRectangle($img, 0, 0, 100, 100, $white);
imageRectangle($img, 0, 0, 99, 99, $black);
imageRectangle($img, 5, 5, 94, 94, $black);
$points = Array(12,10,
20,15,
15,20);
$nump = (int) count($points)/2;
imagePolygon($img, $points, $nump, $orange);
imageLine($img, 17, 18, 27, 33, $orange);
imageLine($img, 18, 18, 28, 33, $lightorange);
imageLine($img, 19, 18, 29, 33, $orange);
imageRectangle($img, 15, 33, 80, 75, $orange);
imageFill($img, 14, 14, $lightorange);
imageFill($img, 20, 40, $lightorange);
imageString ($img, 2, 20, 40, "I'm a PHP", $black);
imageString ($img, 2, 30, 55, "image", $black);
imagePNG($img);
?>

и test.html

<html>

<head>
<title>test</title>
</head>

<body>
<img src="img.php">


</body>
</html>
B
На сайте с 23.05.2006
Offline
95
#7

Все ребят, ОГРОМНОЕ спасибо, понял. Заработало.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий