Reset-Problem bei PHP Formular

Martys

Erfahrenes Mitglied
Hallo,

habe mir ein Formular gebastelt, was die Eingaben auf Korrektheit überprüft.
Dies funktioniert auch alles so, wie es soll. Allerdings funktioniert der Reset-Button nur beim ersten Azfruf, d.h. wenn ich einmal auf Submit klicke und die Eingaben verarbeitet werden, kann ich die Eingaben nicht mehr mit dem Reset-Button zurücksetzen (falls ein Fehler gefunden wurde).

Ist das normal oder gibt es da einen Trick?

Danke schon mal

Martys
 
Zuletzt bearbeitet:
kann es sein, das du, wenn ein Fehler auftritt, das Formular nochmal anzeigst, dabei aber die Werte in den Felder vorgibst?

Das kann dann natürlich nicht gehen, weil Reset von den Standardwerten, also von dem was als Paramter für das value-Attribut angegeben wird, ausgeht...

entweder du setzt die Felder dann mit JavaScript zurück, oder du musst damit leben.
 
kann es sein, das du, wenn ein Fehler auftritt, das Formular nochmal anzeigst, dabei aber die Werte in den Felder vorgibst?
Ja, stimmt, damit man nicht alles nochmal neu eingeben muss.

Wenn ich nun dies nun mit JavaScript beheben möchte, könnte es theoretisch so gehen:

Auf den Reset-Button ein onClick zum Funktionsaufruf, der die Inhalte der einzelnen Felder zurücksetzt?
Wenn ich nun die Variable $name im PHP-Script habe, kann ich dann mit JavaScript durch var = name darauf zugreifen?

Bin absoluter Neuling in JavaScript.

Danke schon mal

Martys
 
Nein, kannst du nicht, da JavaScript Client-Seitig ist, und PHP serverseitig ... du kannst höchsten PHP-Variablen so im Quelltext ausgeben,das sie auch JavaScript-Variablen sind

http://www.readthefuckingmanual.de ist da eine nette Hilfe, was HTML und JS angeht ... (die URL gibts wirklich, nicht das du dich verarscht fühlst...)
 
Nenn den Reset Knopf zwar Reset, aber als Type Submit, und dann
PHP:
<?php
    if (isset($_REQUEST(['reset']))
   {
     foreach ($_POST as $key => $value)
    {
       unset($_POST[$key]);
    }
   }
?>

Ist aber ungetestet, müsste aber so ungefähr gehen...
statt unset kannst du auch
PHP:
$_POST[$key]="";
benutzen.

Gruß Alex
 
Zurück