input type="hidden" und PHP

Wolfsbein

Erfahrenes Mitglied
Habe folgendes Problem:
Ich habe in einer Seite eine Datenbankabfrage und darunter ein Formular zum Einfügen in die DB. Das Forumalar hat ein hidden Feld mit Namen action.
Jetzt müsste ich doch mit
if ($action)
prüfen können, ob das Formular abgesendet wurde, oder nicht?
Der Code sieht ungefähr so aus:
Code:
if ($action)
{in Datenbank einfügen}
unset($action)
Datenbankabfrage
Ausgabe in Tabelle
Ausgabe von Formular:
<form action="<?php $PHP_SELF ?>">
<input type="hidden" name="action">
blabla.
Die Daten werden eingefügt. Wenn ich aber jetzt z.B. auf Reload/Neu Laden drücke, werden die Daten noch einmal eingetragen, trotz unset.
 
Du hast dann schon eine Variable namens $action, die aber leer ist. Da kannst du schlecht was damit anfangen.
Versuchs mal damit:
Code:
<input type="hidden" name="action" value="1">
Dann kannst du prüfen ob das Formular abgesendet wurde indem du prüfst ob $action == 1 ist.
 
Wenn du das Formular abegschickt hast und dann reloadest bekommt das Script die Variable nochmal zugesendet. Ob du sie nun in dem Script löscht oder nicht ist dabei egal.

aber ob man reloadet kannste in etwa so überprüfen:
PHP:
if($PHP_LAST == $PHP_SELF)
{
ehco("du hast aktualisiert");
}
wobei die Variable nicht $PHP_last heisst sondern irgendwie anders. Sie enthält aber die Adresse der Seite von der der User kommt.

Das schlägt aber auch bei Selbstverweisenden Formularen an.
 
Original geschrieben von FireFart
dann lösch die variable $eintragen in der if schleife...dann geht das mit reload nicht..
Das schlägt auch bei selbstverweisenden Formularen an.

Genau das ist das Problem. Wenn ich es so machen würde, würde das Script immer bei diesem Test aufhören.
 

Neue Beiträge

Zurück