Obrázek

Ahoj, nevíte proč mě nefunguje následující kód? (vykreslení jednoduchého obrázku pomocí PHP). Když tam nejsou HTML prvky tak funguje.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
Header ("Content-type: image/png");
$obrazek = ImageCreate (500, 100);
ImageColorAllocate ($obrazek, 80, 30, 20);
$bila = ImageColorAllocate ($obrazek, 255, 255, 255);
$text="pokus...";
ImageString ($obrazek, 5, 20, 10, $text, $bila);
ImagePng ($obrazek);
?>
</body>
</html>
A tak to je správne, bez html prvkov to má aj byť. Nemôžete miešať 2 rôzne veci, tj obrázok spoločne s html kódom.
Díky, ale jaktože funguje toto? Je tam také PHP kód...

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
echo 'Ahoj světe!';
?>
</body>
</html>
Tento Vami uvedený kód je správne, obsahuje html kód, časť normálne napísaná a časť vložený php skriptom.
V tom predošlom ste v jednom výstupe posielali 2 rôzne veci (2 hlavičky - jednu textovú a druhú obrázkovú) čož je špatne.
Napíšu o co mi jde, já bych chtěl mít na stránce hlavičku nakreslenou v PHP a ne tam vkládat obrázek ze souboru. Možná se to tak nedělá, ale já nejsem grafik, tak mě napadlo toto.

Díky L.K.
Robí sa to tak že jeden php súbor generuje obrázky a následne v druhom súbore odkazujete pomocou html tágu img na súbor pre generovanie obrázkov.
nejprve vytvorte samostatny soubor "nazev.php" ktery bude obsahovat:
<?php
Header ("Content-type: image/png");
$obrazek = ImageCreate (500, 100);
ImageColorAllocate ($obrazek, 80, 30, 20);
$bila = ImageColorAllocate ($obrazek, 0, 0, 255);
$text="pokus...";
ImageString ($obrazek, 5, 20, 10, $text, $bila);
ImagePng ($obrazek);
?>

a ve vasem HTML stranky pote pouzijte pouze:

<img src="/nazev.php?width=500&height=100&type=png" />
*"/nazev.php" je nazev a cesta k souboru .php