Formular und reload
Patrick
- php
Hallo Gemeinde,
ich habe ein Formular, dass Datensätze ändert, neu speichert oder löscht. Nun habe ich das folgende Problem. Nach Änderung, Löschung oder neu Speicherung eines Datensatzes muss ich des öfteren einen Reload auf die Seite machen, damit die Daten aus der MySQL-DB aktualisert werden. Im Cache scheinen aber immer noch die Daten zu sein, die ich vorher bereits weggeschickt habe. Beim löschen und ändern ist das nicht umbedingt ein Problem, aber beim Neuanlegen kommt es dazu, dass sich die Daten vervielfältigen... Wie kann ich umgehen, dass die Daten doppelt und dreifach in der DB abgelegt werden?
Gruss
Patrick
wenn ich dich richtig verstanden habe, dürftest du einfach nicht die seite neu laden sondern einfach nur den cache zu leeren..
fall 1 (löschen): du löschst einen datensatz und lädst die seite neu, dadurch würde der datensatz nocheinmal gelöscht, deswegen fällt dir nichts auf..
fall 2 (update): der datensatz wird ein zweitesmal überschrieben
fall 3 (neu): du legst den datensatz nocheinmal neu an..
so müsste dein problem sein
wenn ich dich richtig verstanden habe, dürftest du einfach nicht die seite neu laden sondern einfach nur den cache zu leeren..
fall 1 (löschen): du löschst einen datensatz und lädst die seite neu, dadurch würde der datensatz nocheinmal gelöscht, deswegen fällt dir nichts auf..
fall 2 (update): der datensatz wird ein zweitesmal überschrieben
fall 3 (neu): du legst den datensatz nocheinmal neu an..
so müsste dein problem sein
Genauso sieht es aus, da ich aber einen reload brauche, müsste als erstes der Cache geleert und danach der reload gemacht werden...
Genauso sieht es aus, da ich aber einen reload brauche, müsste als erstes der Cache geleert und danach der reload gemacht werden...
Warum brauchst du einen Reload? Ich nehme mal an, weil eine alte Version der Seite noch im Cache ist, und diese aufgerufen wird, wenn du das Formular abschickst.
Modifiziere doch also einfach den Header deiner Formularseite so, dass er nicht gecachet (sp?) wird.
Hallo Gemeinde,
Hallo Hirte ;-)
Wie kann ich umgehen, dass die Daten doppelt und dreifach in der DB abgelegt werden?
ganz einfach: indem Du die Scripte für das Auslesen und das Schreiben/Ändern der Daten trennst.
Seite1: _nur_ auslesen und anzeigen. Klick auf "Beitrag eintragen" ruft auf:
Seite2: nimmt Daten entgegen und ändert die Datei/DB. Nach getaner Arbeit: Location("header: http://meinedomain.de/Seite1.php"); exit; _keine_ Ausgabe.
Dann bist Du wieder auf der Augangsseite, die automatisch die aktualiserte Version lädt. Fertig. Diese Seit wude _nicht_ mit einer POST- oder GET-Übergabe aufgerufen.
Gruß, Andreas