Datensätze lesen
Um den Inhalt einer MySQL-Datenbank-Tabelle zu lesen, benutzen Sie den Befehl
SELECT Feldliste FROM Tabelle ORDER BY Feldname Sortierreihenfolde
.
In der Feldliste stehen die Feldnamen, die ausgelesen werden sollen. Statt dessen kann auch ein *
für alle Felder angegeben werden. Die Sortierreihenfolge kann aufwärts mit ASC bestimmt werden,
oder abwärts mit DESC.
<?php include 'inc/zugriff.php'; $sql = "SELECT * FROM Beitrag ORDER BY Zeit DESC"; $result = mysqli_query($dblink, $sql); ?>
Damit haben Sie die Daten aus der Tabelle jetzt ausgelesen. Mit der Funktion mysqli_num_rows($result)
können Sie auslesen, wieviele Zeilen gelesen wurden. Um die Daten jetzt auch anzuzeigen,
benötigen wir die Funktion mysqli_fetch_array
, mit der wir die Datensätze nacheinander auslesen
Den Zeitstempel wandeln wir nun um, in Datum und Uhrzeit. Das Ergebnis lässt sich nun anzeigen.
<?php $anz = mysqli_num_rows($result); for($i=0; $i<$anz; $i++){ $finfo = mysqli_fetch_array($result, MYSQLI_ASSOC); $name = $finfo["Name"] ; $datum = $finfo["Zeit"] ; $datum = strftime('%d.%m.%Y um %H:%M', $datum); $text = $finfo["Beitrag"] ; $comment = $finfo["Kommentar"] ; $email = $finfo["eMail"] ; $homepage = $finfo["HP"] ; echo "<div class=\"uberschr\">\n"; echo "<p class=\"sender\">$datum\n"; echo "<a href=\"mailto:$email\"> <img src=\"img/email.gif\" alt=\"eMail\"></a>\n"; echo "<a href=\"$homepage\"> <img src=\"img/homepage.gif\" alt=\"Homepage\"></a>\n"; echo "</p>\n"; echo "<p class=\"name\">$name</p>\n"; echo "</div>\n"; echo "<p class=\"beitrag\">$text</p>\n"; echo "<hr>\n"; } ?>
Nun ändern müssen wir das Script noch ein wenig ändern. Es kann ja sein, das der User keine eMail-Adresse und Homepage angibt. oder die Homepage nur ohne http:// angibt. Das ganze sieht dann wie folgt aus:
if(trim($email) == "") { echo "<img src=\"img/noemail.gif\" alt=\"Keine eMail\">\n" ; } else { echo "/lt;a href=\"mailto:$email\"> <img src=\"img/email.gif\" alt=\"eMail\"></a>\n"; } if(trim($homepage) != "") { if(strtolower(substr($homepage, 0, 7)) == "http://") { echo "<a href=\"$homepage\"> <img src=\"img/homepage.gif\" alt=\"Homepage\"></a>\n"; } else { echo "<a href=\"http://$homepage\"> <img src=\"img/homepage.gif\" alt=\"Homepage\"></a>\n"; } } else { echo "<img src=\"img/nohomep.gif\" alt=\"Keine Homepage\">\n"; }