Datensatz an Tabellenkopf hinzufügen

Oh man ihr redet als wäre das ein Kinderspiel aber ich kriegs nicht hin so wie ich es mir wünsche.. :( Vllt drücke ich mich immernoch zu ungenau aus.

Betrachten wir das mal von der ID her:

1 Film1
2 Film2
3 Film3
4 Film4
5 Film5

wenn ich nun einen neuen Film hinzufüge, sprich Film6, bekommt der natürlich die ID 6.
Die Reihenfolge wäre dann folgende. (Die Reihenfolge ist deshalb wichtig, weil die Schleife sie nach der Reihenfolge wie sie in der Tabelle angeordnet ist, auflistet)

1 Film1
2 Film2
3 Film3
4 Film4
5 Film5
6 Film6

und das möchte ich nicht.
Film6, soll ganz oben hin - vor Film1.
Wenn ich das nach den ID's sortiere, ändert sich ja die Reihenfolge der Filme nicht, sprich 6 wird immer über/hinter 5 sein, das einzige was ich ändert ist die Auflistungsrichtung (1,2,3,4,5,6 oder dann halt 6,5,4,3,2,1)
meins muss aber dann so aussehen: 6 1 2 3 4 5 - damit der neu hinzugefügte Film ganz oben ist.

So, entweder habt ihr die ganze Zeit mein Problem schon gelöst nur ich hab den Wald vor lauter Bäume nicht gesehen, oder ich hab mich jetzt verständlicher ausgedrückt ^^

Ich hoffe mir kann geholfen werden..
Gruß, Dariy
 
Naja jetzt hab ich das erste mal verstanden, was du überhaupt willst ;)

Warum machst du nicht eine zusätzliche Spalte (z.B. SortID)

ID | SortID | FilmName
1 | 2 | Film1
2 | 3 | Film2
3 | 1 | Film3

Dann kannst du mit "ORDER BY SortID" auslesen. Wenn du dann einen neuen Film einträgst, liest du jede SortID aus, erhöhst sie um 1 und schreibst sie wieder in die DB.
 
Gut wenigstens sind wir so weit dass bekannt ist was ich möchte ^^

Die Idee ist hamma :) Wäre ich auf die schnelle sicher nicht drauf gekommen, trotzdem harperts bei mir noch an der realisierung.

Habe die Spalte SortID erstellt, so sieht jetzt die if-Abfrage für das Hinzufügen aus:

PHP:
if ($add == "Hinzufuegen") {
MYSQL_QUERY("INSERT INTO `programm` (`ID`, `titel`, `genre`, `age`, `zeit`, `release`, `dauer`, `webseite`, `SortID`) VALUES ('', '', '', '', '', '', '0', '', '1')") OR die("<hr>Fehler bei 11Update : ".mysql_errno()."->".mysql_error()."<hr>");
MYSQL_QUERY( "UPDATE `programm` SET `SortID` = '$programm[8] + 1'") OR die("<hr>Fehler bei Update : ".mysql_errno()."->".mysql_error()."<hr>");
}

Ich füge einem neuen Eintrag also die SortID 1 zu (was denke ich mal richtig ist)
Der zweite Query ist wahrscheinlich humbuck, aber die einzige Idee die ich hatte.
Habe wie ihr seht, die SortID + 1 geschrieben, aber er updatet es nicht, sprich, die ID bleibt 1
(Ich habe jedem bereits vorhandenen Eintrag in der Tabelle den SortID Wert 1 zugewiesen)

Was außerdem an diesem Query problematisch scheint: Ich suche nach der Möglichkeit, dass er ALLE SortID's in der Tabelle um 1 erhöht.. schätze mal damit bin ich auf dem völlig falschem weg..

Ich hoffe dafür gibts noch Ideen, bei mir hat es noch nicht geblitzt.
Danke im Vorraus :)

Dariy
 
Du bist dem Ganzen näher als du denkst :)

Code:
"UPDATE programm SET SortID=SortID+1"

Das machst du aber am Besten, bevor du das neue Programm mit der SortID 1 einfügst. Oder du fügst das neue Programm mit der SortID 0 ein.

Gruss
De Igäl
 
Igäl :) Wieder einmal verneige ich mich vor dir!
Kann man dich irgendwo ehren? ^^

Vielen Dank :) Die schlaflosen Nächte haben ein Ende, klappt einwandfrei, hast was gut bei mir ;)

Gruß,
Dariy
 
Zurück