ich möchte verhindern das beim aktualiesieren doppelte eintraege gemacht werden
ich habe ein script geschrieben welches formulardaten innerhalb eines framesets auswertet bzw. in einer textdatei speichert (sowas wie ein guestbook)
eintragungen laufen auch schön und gut nur wenn ich aktualisiere wird der selbe eintrag wider geschrieben
ich denke weil das script sich die fomular variablen aus der url holt
also sie werden nicht von dem formular uebergeben sondern befinden sich noch hinter der url der seite im frameset
weiss jemand wie ich die nach dem ersten submit ENDGÜLTIGH lösche
bzw. wie ich mit meinem problem fertig werde?
danke für deie mühe und evtl. hilfe
thx & greetz
nilzn
Kann es sein, dass du mit der GET-Nethode arbeitest? also ich arbeite grundsätzlich mit post, da es sicherer und komplexer ist und dabei hatte ich dieses Problem bisher nicht.
also ich mach n eintrag
passiert…
klicke dann auf aktualisieren
dann warnfenster:
Die Seite kann ohne ein erneutes Senden der Information nicht aktualiesiert werdn
Klicken Sie auf…
und dann wird der eintrag nochmal geschrieben weil der browser die Vars noch hinter dem ? in der URL hat
jemand meinte schon IP blocking
aber sowas kommt doch so häufig
na ja
greetz nilzn
Kann es sein, dass du mit der GET-Nethode arbeitest? also ich
arbeite grundsätzlich mit post, da es sicherer und komplexer
ist und dabei hatte ich dieses Problem bisher nicht.
Lasse keinen cache zu und nutze post, dann sollte es klappen.
Ansonsten vielleicht einfach nach absenden des formulars direkt auf ne andere Seite weiterleiten, dann tritt das Problem sicher nicht mehr auf
naja, ob du es mit post oder mit get machst ist fuer das problem irrelevant.
du speicherst einfach zusaetzlich zu den daten noch eine tan, die beim aufruf des forms generiert wird und als hidden feld uebertragen wird. dann schaust du vor dem speichern nach, ob es schon einen eintrag mit der tan gibt.
Das hat weder etwas mit gespeicherten Daten in der URL zu tun noch mit der Verwendung von Post oder Get.
Wie du ja richtig beschrieben hast, fragt dich der Browser beim Neuladen der Seite, ob er die Daten nocheinmal übertragen soll.
Das hängt damit zusammen, dass er die zuletzt eingegebenen Daten in einem internen Cache speichert. Das ist doch eindeutig und ganz logisch, dass er es dann nocheinmal einträgt.
weist du wie das mit header() geht
werde nämlich direkt weiterleiten
damit ich dann so oft wie ich will aktualisieren klicken
bäh
krieg da nur ne komische fehlermeldung:
Warning: Cannot add more header information - the header was already sent (header information may be added only before any output is generated from the script - check for text or whitespace outside PHP tags, or calls to functions that output text) in /vserv/d/dubios01/htdocs/mainpoll/content.php on line 51
kannst du mir erklären wie ich die weiterleitung mache
also ich will das problem jetzt umgehen in dem ich einfach nochmal auf die selbe seite weiterleite(aber nur einmal) nur ohne variablen die uebergeben werden
wie mach ich nun eine weiterleitung in php bzw. einen reload ohne den ganzen sülz
juchuu es klappt
script liegt und einlese seite sind jetz verschieden
und script leitet weiter an einlese.seite so das beim reloaden kein schreibscript ausgeführt weren kann
juchu
danke nilzn