Hallo zusammen,
ich möchte gern eine Tabelle manuelle sortieren, indem ich ein zusätzliches Feld eintrage und dort die Position eintragen kann.
Dazu lasse ich die nötigen Spalten, also id, name und sortierfeld als tabelle ausgeben, wobei die Zahl zum Sortieren in ein Textfeld eingegeben wird, dass den Namen inpAnzXXXX (XXXX = id der Reihe) enthält.
Nun sollen von Anfang an die Werte für das Sortierfeld ein Vielfaches von 10 sein, damit man gleich mehrere Spalten verändern kann.
Beispiel:
Will ich die Reihe mit Sortierung 50 zwischen 80 und 90 einfügen, so erhält diese Reihe den neuen Wert 85 (irgendeinen Wert zwischen 80 und 90) und wird somit 'dazwischengeschoben'. Die 90 bleibt ja gleich, und die Reihen zwischen dem alten Wert 50 und dem Neuen, 85, werden um 10 verringert, damit es von der Reihenfolge wieder stimmt.
Ich habe mir nun gedacht, alle Reihen mit der id als index und dem Sortierwert als Wert in einen Array zu laden, diesen anhand der Sortierung zu sortieren und dann einfach vom Ersten an mit 10, 20, 30... zurück in die Datenbank zu schreiben. Aber wie schaffe ich es dann, die richtige ID und die Sortierung richtig zurückzuschreiben, da ja der Index = feld_id und Wert = feld_sortierung ist? Vielen Dank