Wie update ich eine DB ohne das Formular zu ändern?
ingobar
- php
0 wahsaga
Hallo!
So, ich habe mir jetzt mit php ein Formular zusammengestrickt. Dabei hole ich sogar Daten aus der DB und erzeuge Auswahlmenüs DB-abhängig (toll, wenn so etwas das erste Mal funktioniert :-) ).
Jetzt möchte ich die Änderungen gerne in die DB zurückschreiben ohne das Formular für den User zu verändern.
2 bzw. 3 Möglichkeiten sehe ich hier:
1A: Ich rufe eine neue php-Datei, die über die URL die entsprechenden Daten bekommt (sind nicht geheim) und leite danach wieder zurück zur urspünglichen Seite. Damit hätte ich zwei Ladevorgänge, oder?
1B: Ich rufe die gleiche(!) Datei auf und habe sozusagen das Update-Funktion dortenthalten. Also Update- und Anzeigefunktion in einer php-Datei.
2: AJAX. Wenn ein Eintrag gändert wird, schicke ich die Daten an ein entsprechende php-Datei. So habe ich keine Ladevorgänge.
Was ist am Besten? Ich würde letzteres favorisieren.
hi,
1A: Ich rufe eine neue php-Datei, die über die URL die entsprechenden Daten bekommt (sind nicht geheim)
Was spricht gegen POST statt GET?
und leite danach wieder zurück zur urspünglichen Seite. Damit hätte ich zwei Ladevorgänge, oder?
Jein.
Zwei Reaktionen vom Server.
Erst mal "schau bitte unter einer anderen Adresse nach", die Umleitung. Und dann das Anfordern der neuen Zielseite.
Das macht sich für den Nutzer aber idR. nicht als zwei Vorgänge bemerkbar.
1B: Ich rufe die gleiche(!) Datei auf und habe sozusagen das Update-Funktion dortenthalten. Also Update- und Anzeigefunktion in einer php-Datei.
Erweitertes Affenformular sozusagen.
2: AJAX. Wenn ein Eintrag gändert wird, schicke ich die Daten an ein entsprechende php-Datei. So habe ich keine Ladevorgänge.
Was ist am Besten? Ich würde letzteres favorisieren.
Die ersten zwei Lösungen funktionieren auch ohne AJAX-fähigen Browser bzw. auch ohne Javascript. Wenn du darauf verzichten kannst, kann es allein letztere Lösung sein. Sonst halt als Workaround zusätzlich 1 oder 2 implementieren.
gruß,
wahsaga