Problem mit <form>

NetteMann

Mitglied
PHP:
<form id="form1" name="form1" method="post" action="">
            <p>&nbsp;</p>
                
               <p>
                  <label>Name des zu löschenden Eintrages
                  <input type="text" name="suche_var" id="suche_var" />
                  </label>
            </p>
            <p>
               
                  <label>
                  <input type="submit" name="suche_var2" id="suche_var2" value="Zu l&ouml;schender Eintrag !!ACHTUNG!! Unwiderruflich!!" />
                  </label>
            </p>
              </form>

jedes mal wenn ich F5 drücke oder anders aktualisiere fügt er mir einen leeren Datensatz in meine DB. Wie kann ich das unterbindinden?
 
Wenn ich mich nicht irre hilft es bei den meisten Browsern nach dem Versand solcher Daten einen Redirect einzuschleusen.
PHP:
header('Location: hier die Location angeben');
exit;
Dadurch werden die POST-Variablen geloescht und ein Reload sendet diese nicht erneut.

Ich weiss jetzt nicht in welchen Browsern dies funktioniert, kann dies aber von Firefox bestaetigen. Konqueror wiederum interessiert das nicht.
 
Da gibts nur ein prob: User Login

Session startet--> per POST
und wennsch die POST dann lösche findet doch ein LOG OUT statt oder nicht?
 
Tu ein verstecktes Feld ins Formular welches als Wert einen aktuellen Timestamp hat.
In der DB erzeuge ein UNIQUE-Feld , darin speicherst du einen Hash aus bspw. IP+übermitteltem Timestamp.

Beim Aktualisieren bleiben beide Sachen identisch, somit auch der Hash...und der Datensatz kann nicht eigefügt werden, weil der Hash schon existiert.
 
Zurück