dedlfix: Nach dyn. erzeugtem Inhalt, keine HTML Ausgabe mehr

Beitrag lesen

echo $begrüßung;

Eigendlich total simpel aber aus irgendeinem Grund, wird alles was nach dem PHP Skript kommen soll nicht mehr ausgegeben.
while($resultset = mysql_fetch_array($result) or die(mysql_error())) {

Wenn mysql_fetch_array() keine weiteren Datensätze mehr finden kann, gibt es false zurück. Dies ist kein Fehler sondern gewünschtes Verhalten.

Bei boolschen Ausdrücken wird, sobald das Ergebnis eindeutig ist, der restliche Teil nicht mehr ausgeführt. Wenn noch Datensätze vorhanden sind, entspricht das einem true, die Anweisung nach or wird nicht mehr ausgewertet. Am Ende der Datensätze gibt es nun ein false, und der Teil nach dem or wird ausgeführt. Da aber auch kein Fehler vorlag, liefert mysql_error() einen Leerstring zurück, und das die() hat nichts zum Anzeigen.

Beim Fetchen will man solange Datensätze abholen, bis keine mehr vorhanden sind. Wenn beim Fetchen ein false zurückkommt, will man daraufhin also nicht das Programm beenden, sondern es der while-Schleife durchreichen, damit diese sich beenden und die Steuerung an die nachfolgenden Anweisungen weitergeben kann.

echo "$verabschiedung $name";