789 Aufrufe
Gefragt in Skripte(PHP,ASP,Perl...) von
Hallo,

ich habe eine Frage zu einer MYSQL-Abfrage mit PHP.
Und zwar habe ich ganz viele verschieden Spalten mit IDs. Wenn ich nun zum Beispiel die Spalte mit der ID 3 lösche, dann soll die ID bei allen Spalten danach angepasst werden. Da 3 ja weg ist, müsste also die Spalte danach die ID 3 haben, die danach statt 5 die ID 4 usw.

Wie würdet ihr das machen?

LG
Hama123

3 Antworten

0 Punkte
Beantwortet von son_quatsch Experte (5.3k Punkte)
Tabellenspalten haben Namen, keine IDs. Feldelemente in PHP haben entweder numerische oder textuelle Schlüssel.

Falls du von der Rückgabe der Funktion mysql_fetch_array() sprichst: nimm textuelle (Spaltennamen) statt numerische Schlüssel des Felds.

Egal was du vorhast - beschreib dein eigentliches Ziel - das lässt sich mit Sicherheit sehr viel effizienter erreichen.
0 Punkte
Beantwortet von
Hallo son_quatsch,

sorry, ich meinte nicht verschiedene SPALTEN mit Ids, sondern verschiedene REIHEN. Also ich habe eine Spalte, in der für jede Reihe die Position gespeichert wird.

Also, da wo 1 steht, das Bild soll an erster Stelle stehen. Da wo 2 steht, das an zweiter usw.

Wenn ich nun einen Eintrag aus der DB lösche, welcher als Position 2 gespeichert hat, dann müssen nachfolgende Einträge so angepasst werden, dass es keinen Sprung an der nun fehlenden Stelle gibt. Also nicht 1, 3, 4, 5. Sondern wieder 1, 2, 3, 4, 5. Mit anderen Worten, alle nachfolgenden Einträge müssen um eins vermindert werden.


lg
Hama123
0 Punkte
Beantwortet von
Ich habe es hinbekommen, alles klar. Danke trotzdem!
...