mysql und while
nobbi
- php
Hallo,
ich hab diesen Code schon x-mal eingesetzt, bisher liefs einwanfrei.
Doch diesmal wills einfach nicht klappen.
Ich starre wie ein Kaninchen auf den Bildschirm und find den Fehler nicht.
$SQL = "SELECT * FROM eMail WHERE userId = '$kd[KUNNUM1]' ORDER BY 'mailId' DESC";
$res = mysql_query($SQL,$ConnectHnd);
echo "<ul>";
while($m = mysql_fetch_array($res, MYSQL_ASSOC)){
echo "<li title='". $m['mailBody'] . "'>". $m['mailSubject'] . "; am: " . $m['mailDatum'] . "; " . $m['mailAction'] . "</li>";
}
echo "</ul>";
Leider wird nur jeder 2. DB-Eintrag angezeigt.
Den dafür aber 2 mal.
Das gibts doch nicht, wo ist der Fehler?
Ein mysql_fetch_array($res, MYSQL_ASSOC) mit var_dumb zeigt, dass die Datensätze sauber gefunden werden.
Wieso dann die komischen Anzeige?
Vermutlich bin ich schon ganz blind.
Gruß
Nobbi
@@nobbi:
nuqneH
echo "<li title='". $m['mailBody'] . "'>". $m['mailSubject'] . "; am: " . $m['mailDatum'] . "; " . $m['mailAction'] . "</li>";
Das gibts doch nicht, wo ist der Fehler?
Der Kapitalfehler ist das Einfügen von unbehandelten fremden Daten in HTML-Code. Sicherheitslücke groß wie Schleusentore im Panamakanal.
Fremde Daten (aud GET, POST, Datenbank, …) müssen beim Kontextwechsel _grundsätzlich_ sicher gemacht werden: htmlspecialchars()
.
Qapla'
Moin
Fremde Daten (aud GET, POST, Datenbank, …) müssen beim Kontextwechsel _grundsätzlich_ sicher gemacht werden:
htmlspecialchars()
.
Ich möhcte noch anmerken, dass die Verwendung der mysql-Erweiterung in PHP nicht wirklich die beste Wahl ist, da diese seit einigen Versionen auf DEPRECATED gesetzt ist und somit irgendwann von der Bildfläche verschwindet.
Besser MySQLi oder PDO verwenden.
Gruß Bobby