plaatje weergeven met GD
Wim
22/12/2006 22:09:00Ik probeer twee plaatjes weer te geven op het scherm. Ik krijg geen foutmelding, maar de plaatjes worden niet weergegeven. In plaats daarvan komt er dit te staan:
GIF87a€, „©Ëí£œT;GIF87aF€,F„©Ëí£œ´Ú‹³Þ¼÷;
Het meest logische leek mij de headers. Maar waar ik die ook neer lijk te zetten, het probleem blijft. Dit is mijn test-code:
Heeft iemand suggesties?
GIF87a€, „©Ëí£œT;GIF87aF€,F„©Ëí£œ´Ú‹³Þ¼÷;
Het meest logische leek mij de headers. Maar waar ik die ook neer lijk te zetten, het probleem blijft. Dit is mijn test-code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php
ob_start();
$dbar1 = 30;
$dbar2 = 70;
echo "<html><head><title></title></head><body>";
echo "
<table>
<tr><td>1</td><td><td><td></td></tr>
<tr><td>2</td><td><td><td></td></tr>
<tr><td>3</td><td><td><td>"; create_rule($dbar1, $dbar2); echo "</td></tr>
<tr><td>4</td><td><td><td></td></tr>
<tr><td>5</td><td><td><td></td></tr>
<tr><td>6</td><td><td><td></td></tr>
<tr><td>7</td><td><td><td></td></tr>
</table>";
ob_end_flush();
function create_rule($dbar1, $dbar2) {
header("Content-type: image/gif");
$rule1 = imagecreatetruecolor($dbar1, 5);
$bg1 = imagecolorallocate($rule1, 255, 0, 0);
imagegif($rule1);
$rule2 = imagecreatetruecolor($dbar2, 5);
$bg2 = imagecolorallocate($rule2, 0, 255, 0);
imagegif($rule2);
imagedestroy($rule1);
imagedestroy($rule2);
}
ob_end_clean();
echo "</body></html>";
?>
ob_start();
$dbar1 = 30;
$dbar2 = 70;
echo "<html><head><title></title></head><body>";
echo "
<table>
<tr><td>1</td><td><td><td></td></tr>
<tr><td>2</td><td><td><td></td></tr>
<tr><td>3</td><td><td><td>"; create_rule($dbar1, $dbar2); echo "</td></tr>
<tr><td>4</td><td><td><td></td></tr>
<tr><td>5</td><td><td><td></td></tr>
<tr><td>6</td><td><td><td></td></tr>
<tr><td>7</td><td><td><td></td></tr>
</table>";
ob_end_flush();
function create_rule($dbar1, $dbar2) {
header("Content-type: image/gif");
$rule1 = imagecreatetruecolor($dbar1, 5);
$bg1 = imagecolorallocate($rule1, 255, 0, 0);
imagegif($rule1);
$rule2 = imagecreatetruecolor($dbar2, 5);
$bg2 = imagecolorallocate($rule2, 0, 255, 0);
imagegif($rule2);
imagedestroy($rule1);
imagedestroy($rule2);
}
ob_end_clean();
echo "</body></html>";
?>
Heeft iemand suggesties?
PHP hulp
28/03/2024 13:04:46Wim
23/12/2006 22:08:00Red Crew
23/12/2006 22:13:00Wim
23/12/2006 22:43:00Ja, volgens phpinfo() wel.
Een voorbeeld vanaf php.net werkt ook.
Een voorbeeld vanaf php.net werkt ook.
Gewijzigd op 01/01/1970 01:00:00 door Wim
- -
23/12/2006 22:56:00Uit je script begrijp ik dat je de images in de HTLM gooit. Je moet het als volgt doen:
img1.php
img2.php
bestand.php
img1.php
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
header("Content-type: image/gif");
$rule1 = imagecreatetruecolor($dbar1, 5);
$bg1 = imagecolorallocate($rule1, 255, 0, 0);
imagegif($rule1);
?>
header("Content-type: image/gif");
$rule1 = imagecreatetruecolor($dbar1, 5);
$bg1 = imagecolorallocate($rule1, 255, 0, 0);
imagegif($rule1);
?>
img2.php
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
header("Content-type: image/gif");
$rule2 = imagecreatetruecolor($dbar2, 5);
$bg2 = imagecolorallocate($rule2, 0, 255, 0);
imagegif($rule2);
?>
header("Content-type: image/gif");
$rule2 = imagecreatetruecolor($dbar2, 5);
$bg2 = imagecolorallocate($rule2, 0, 255, 0);
imagegif($rule2);
?>
bestand.php