Robert B.: Eingabeseiten für MySQL-Datenbank

Beitrag lesen

Moin,

section bezeichnet die beiden Hauptsektionen der Eingabeseiten (1 steht dabei für "Datensätze hinzufügen" und 2 eben für "Vorhandene Datensätze bearbeiten"). first bezeichnet die fortlaufende Nummer des Datensatzes in der ursprünglichen Eingabe-Reihenfolge (ohne ORDER BY-Operationen), ab der die jeweils nächsten 20 Datensätze auf der Seite angezeigt werden sollen. Diese Nummer ist NICHT identisch mit der von MySQL vergebenen Nummer im Feld ID; so hat der erste Datensatz in der Tabelle "hersteller" zur Zeit den ID-Wert 3 (die vorangegangenen Datensätze mit 0, 1 und 2 wurden gelöscht), in der PHP-Zählung für die Ausgabe haben die Datensätze aber natürlich weiterhin die Werte 0 bis 19.

Die Zuordnung der ID zwischen PHP und MySQL funktioniert?

Wenn ich jetzt neben dem ersten Datensatz in der Tabelle (ID = 3) auf "Bearbeiten" klicke, wird erneut die Tabelle wie bisher angezeigt, darunter dann die Eingabemaske (der Einfachheit halber in eine Funktion namens input() ausgelagert) mit den Werten des Datensatzes (ohne ID, da von MySQL automatisch vergeben) als vorgegebenen Inhalten. Interessanterweise werden diese Werte, soweit es sich um VARCHAR-Daten handelt nur bis zum ersten Whitespace übernommen, aber um diesen Fehler will ich mich später kümmern.

Brauchst du zum Bearbeiten (SQL-Befehl UPDATE) nicht die ID (wäre jedenfalls sinnvoll)? Und die Whitespace im HTML-Code könnten daher stammen, dass du den Attribut-Wert von value im input-Element ohne Anführungszeichen versiehst.

Viele Grüße,
Robert