Rolf B: Erste Zeile der DB fehlt

Beitrag lesen

Hallo MH,

ich habe mehrere Ahnungen und du hast ein paar Fehler. Hast Du eigentlich in den Browser-Entwicklertools gecheckt, ob die vermisste Zeile tatsächlich im HTML fehlt? Oder vielleicht einfach nur merkwürdig geliefert wird, so dass sie nicht zur Anzeige kommt? Prüfe das in den echten Sourcen, nicht im Elemente-Inspektor.

Hast Du die von PHP generierte Abfrage 1:1 im phpmyadmin ausgeführt? Kommt die vermisste Zeile dann? Prüfe den Wert des klasse-Feldes der vermissten Zeile ganz genau. Stehen da Leerstellen oder andere Sonderzeichen drin, die man auf Anhieb nicht sieht, die aber die Query verhageln?

Was Du auf jeden Fall tun solltest:

  1. Ziehe die Lehrerabfrage vor die Namenabfrage. Schließe die Lehrer-Query nach Abschluss der Schleife, in der Du sie ausliest, mit $ldata->free(). Dadurch hast Du nicht mehrere Queries parallel offen; das kostet nur unnötig SQL Server Ressourcen. Ein Fehler ist das nicht, aber andersrum ist's schöner.

  2. Gib die Namen der Spalten, die Du in der Namen-Abfrage verwendest, explizit im SQL an. SELECT * macht man im phpmyadmin, aber nicht in Programmen.

  3. Du musst die Ausgaben der Namen- und Lehrerdaten mit htmlspecialchars() maskieren. Möglicherweise stehen da Inhalte drin, die die Browseranzeige stören.

Rolf

--
sumpsi - posui - clusi