Dynamisch aus Datenbank auslesen mittels GDLib?

Newcomer1

Mitglied
Hallo.

Ist es möglich bzw. hat schon jemand von euch versucht, aus einer Datenbank in ein Bild, welches mittels GDLib erstellt wurde, auszulesen?
Die Ausgabe der Daten sollte so erfolgen:

Code:
1. Datensatz
2. Datensatz
3. usw.

Nun habe ich die Abfrage fürs erste so gestaltet:

PHP:
<?php
include('mysql.inc.php');
header('Content-type: image/png');

$image = imagecreate(500, 30);
imagecolorallocate($image, 250, 250, 200);
$tcol = imagecolorallocate($image, 0, 51, 102);

$query = "SELECT DATE_FORMAT(datum, '%e.%m.%Y') AS datumformat, DATE_FORMAT(zeit, '%H.%i') AS zeitformat,info,link,id FROM termine";
$sql = mysql_query($query);

while($ds = mysql_fetch_object($sql)){
	$datum = $ds->datumformat;
	$info = $ds->info;
	$zeit = $ds->zeitformat;
	$id = $ds->id;

$text = "ID: $id, $datum ($zeit) - $info";

}

imagestring($image, 2, 5, 5, $text, $tcol);
imagepng($image);
imagedestroy($image);
?>


Hier wird aber lediglich ein Datensatz ausgegeben.
Kann mir jemand einen Denkanstoß geben?

Vielen Dank :)
 
Kein Wunder. Du gehtst mit dem while() alle Datensätze durch und überschreibst deine Variablen jedesmal. Erst nach dem while() wertest du dein $text aus. Ergo hast du immer nur den letzten Datensatz.
Du musst also das Auswerten von $text ebenfalls in die Schleife packen.
 
OK. Danke für's erste. War mir nicht gleich aufgefallen.
Aus der Lösung dieses "Fehlers" ergibt sich jedoch ein weiteres Problem.
Nun werden alle Datensätze ausgegeben, aber alle in einer Reihe.

Mit "<br>" bzw. "\r\n" gehts ja mal nicht.
 
Hm. Der Zeilenumbruch nach einem Datensatz bei einer dynamischen Ausgabe der GDLib nicht so einfach realisierbar.

Normalerweise mache ich diesen ja in PHP mittels "<br>" oder Tabelle innerhalb der "while()" Schleife.

Falls jemand noch einen Tip hätte?
 
Zurück