[php] błąd podczas generowania grafiki

witam,

mam taki kod:

<?php

	$ob=imagecreatetruecolor(200,100);

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

	imagepng($ob);

?>

w mozilli pojawia mi się taki komunikat:

Obrazek (tutaj sciezka do pliku php) nie może zostać wyświetlony, ponieważ zawiera błędy.

natomaist w IE (wersja 7) pojawiają mi się jakieś znaczki. po uruchomieniu var_dump(gd_info()); pojawia mi się:

array(12) {

  ["GD Version"]=>

  string(27) "bundled (2.0.34 compatible)"

  ["FreeType Support"]=>

  bool(true)

  ["FreeType Linkage"]=>

  string(13) "with freetype"

  ["T1Lib Support"]=>

  bool(true)

  ["GIF Read Support"]=>

  bool(true)

  ["GIF Create Support"]=>

  bool(true)

  ["JPG Support"]=>

  bool(true)

  ["PNG Support"]=>

  bool(true)

  ["WBMP Support"]=>

  bool(true)

  ["XPM Support"]=>

  bool(false)

  ["XBM Support"]=>

  bool(true)

  ["JIS-mapped Japanese Font Support"]=>

  bool(false)

}

więc bilbioteka gd jest. ktoś poratuje :slight_smile:

Patrząc na objawy to najbardziej prawdopodobne jest, to że funkcja imagecreatetruecolor wykonała sie z błędem i zwróciła FALSE. Zazwyczaj dzieje się tak np. gdy biblioteka GD istnieje, ale jest źle zainstalowana. Ja bym sprawdził na początek czy przypadkiem któraś z funkcji nie zgłasza błędu, najprościej takim kodem.

<?php

$ob=imagecreatetruecolor(200,100);

if ($ob == FALSE ) {

	echo "Obraz nie zostal poprawnie wygenerowany";

} else {


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

	if (imagepng($ob) == FALSE ) {

	file_put_contents('log.txt','Funkcja imagepng nie zadzialal poprawnie');

	} else {

	file_put_contents('log.txt','Funkcja imagepng zadzialal poprawnie');

	}

}

?>

po wklejeniu twojego kodu znowu pojawił mi się ten sam komunikat czyli

Obrazek (tutaj sciezka do pliku php) nie może zostać wyświetlony, ponieważ zawiera błędy.

nie wiem czy do się do czegoś przyda ale zacząłem sprawdzać, która linijka kodu powoduje te problemy no i po wykomentowaniu linii

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

powyższy komunikat już się nie pojawił ale zamiast tego są jakieś różne krzaczki.

w pliku log.txt zapisało, że Funkcja imagepng zadzialal poprawnie. tzn. ten txt w pliku jest taki sam zarówno wtedy kiedy linijka z header… jest zakomentowania i wtedy kiedy nie jest zakomentowana.