Dan: Insert

Hallo Zusammen

Habe da eine kurze Frage! Ich möchte eine MySQL-Datenbank mithilfe eines Formulars abfüllen.

Das ganze funktioniert auch ohne Probleme. Das heisst bis auf eines:
Wenn ich einen Datensatz hinzugefügt habe (auf den Submit Button geklickt) erscheint der Datensatz wie gewollt in der Datenbank. Wenn ich aber die Seite Aktualisiere mit der Browser-Funktion wird der letzte Datensatz erneut hinzugefügt. Ist nicht ganz unlogisch, aber kann man das irgendwie unterdrücken?

Gruss Dan

  1. Hi!

    entweder
    überprüfst du vor dem einfügen der Daten, ob exakt die gleichen Daten bereits in der Datenbank stehen

    oder
    du leitest nach dem einfügen der Daten auf eine andere Seite weiter (header("Location: ...")) -> wenn nun jemand den reload-Button drückt, wird die Seite, auf die weitergeleitet wurde neu geladen, nicht aber das Script, das die Daten in die DB schreibt.

    mfg
    brand

    Hallo Zusammen

    Habe da eine kurze Frage! Ich möchte eine MySQL-Datenbank mithilfe eines Formulars abfüllen.

    Das ganze funktioniert auch ohne Probleme. Das heisst bis auf eines:
    Wenn ich einen Datensatz hinzugefügt habe (auf den Submit Button geklickt) erscheint der Datensatz wie gewollt in der Datenbank. Wenn ich aber die Seite Aktualisiere mit der Browser-Funktion wird der letzte Datensatz erneut hinzugefügt. Ist nicht ganz unlogisch, aber kann man das irgendwie unterdrücken?

    Gruss Dan

  2. Hallo Dan,

    versuch's doch mal mit einer IF-Abfrage wie z.B.

    if($REQUEST_METHOD=="POST"){
     INSERT INTO...
     }

    Soweit mir bekannt wird die Variable nur direkt nach dem posten Deines Formulars gesetzt. Um ganz sicher zu gehen kannst Du sie ja auch am Ende des IF-Durchgangs wieder auf zurücksetzen mit $REQUEST_METHOD="";

    Gruss
    Lemmy
    http://www.olison.com