Hallo,
habe interessiert mitgelesen und auch ein konzeptionelles Problem.
In einer Adressverwaltung habe ich eine Liste mit n (ein paar hundert) Adressen. Wenn ich zum Bearbeiten auf eine klicke (oder auf "NEU"), geht ein neues Fenster auf mit dem Adressformular. Wenn ich dieses als Neu / Änderung / Kopie / Löschung abschicke, wird die Liste nicht aktualisiert.
Und beim Klick auf die nächste zu bearbeitende Adresse kommt ggf. das vorhandene Formular im anderen Fenster nicht in den Vordergrund, trotz
self.focus();
am Ende der HTML-Seite. Beides irritiert Anwender gewaltig und ich möchte eine Lösung innerhalb einer Seite.
Oben ist die Liste, ggf. mit Scrollbalken, unten das Formular, auch mit Scrollbalken.
Nun klicke eine Adresse in der Liste an. Per Ajax werden die Datenfelder geholt und ins Formular eingefüllt.
Das Abschicken des Formulars geschieht auch per Ajax, damit die HTML- Seite stehen bleibt.
Nun das Problem:
Die neu eingefügte / geänderte Adresse möchte ich oben anzeigen. Kann sein, dass nur ein Datenfeld zu ändern ist, kann sein, dass eine Adresse einzufügen oder zu löschen ist.
Im Moment habe ich keinen Plan, wo eine neue Adresse einzufügen wäre. Oder wo eine geänderte ihren neuen Platz bekommt. Ist die Sortierfolge von UTF-8 Strings bei PHP und Javascript identisch?
Deshalb werde ich wohl erstmal die ganze Liste per Ajax anfordern und ersetzen. Ist immer noch besser als die alte Lösung, bei der die Liste nach einer Änderung nicht mehr aktuell war.
Das würde ich mit <table>...</table> machen.
Aber wie wäre der Ansatz, wenn ich nur den bearbeiteten Satz woanders einsortieren muss? PHP müsste mir sagen: Hinter Zeile 57.
Aber wenn gleichzeitig ein anderer Benutzer ändert, stimmt die Reihenfolge meiner "alten" Listeneinträge nicht mehr.
Gast