In einem kleinen Nebenprojekt sollte auf eine bestehende Datenbank zugegriffen werden, um eine Geburtstagsliste darzustellen.
Die Darstellung in einer Tabelle ist recht schnell erstellt:
<?php include("database.php"); $ergebnis = mysql_query("SELECT * FROM Tabelle ORDER BY Geburtstag"); echo '<table border="1; style="text-align: center">'; echo "<tr>"; echo "<td><b>Nachname</b></td>"; echo "<td><b>Vorname</b></td>"; echo "<td><b>Geburtstag</b></td>"; echo "</tr>"; while($row = mysql_fetch_object($ergebnis)) { echo "<tr>"; echo "<td>". $row->Nachname . "</td>"; echo "<td>". $row->Vorname . "</td>"; echo "<td>". $row->Geburtstag . "</td>"; echo "</tr>"; } echo "</table>"; ?>
Nun wird auch das Datum angezeigt bzw. falls kein Datum eingetragen ist ein leeres Feld. Allerdings wird das Datum im SQL-Format wie 1995-11-29 angezeigt. Eigentlich sollte das Format wie folgt angezeigt werden: 29.11.1995.
Dieses ist mit dem folgenden Austausch des Befehlssatzes möglich:
echo "<td>". date("d.m.Y ", strToTime($row->Geburtstag)) . "</td>";
Jetzt gibt es leider ein neues Problem, da ein NULL-Wert ebenfalls umgewandelt wird und nun dadurch ein Datum angezeigt wird: 01.01.1970
Auch das kann abgefangen werden, damit wieder ein Leerfeld erscheint:
if (!empty($row->Geburtstag)) { echo "<td>". date("d.m.Y ", strToTime($row->Geburtstag)) . "</td>"; } else {echo "<td></td>"; }
Nun wird das Datum wie angefordert angezeigt und falls es einen NULL-Wert gibt entsprechend ein leeres Feld auszugeben.
Tipp: Der Eintrag „include(„database.php“);“ stammt aus dem vorherigen Artikel.