Moin!
Problem ist jetzt nur, was machen wenn was an der Eingabe zu bemängeln ist? Dann muß ich ja die Daten von Scrip.php wieder in Formular.php bekommen, damit die Daten nicht erneut ausgefüllt werden müssen. Javascript history kann ich auch nicht machen, denn da kann ich ja keine Fehlermeldung ausgeben.
Die Idee ist, nur EIN PHP-Skript zu haben. Das hat als grobe Ausrichtung folgende Abfrage:
Wenn was gesendet wurde, dann prüfen, ob alles korrekt ist.
Wenn alles korrekt ist, dann Datenbank füllen und Ergebnisseite zeigen.
Wenn es nicht korrekt ist, oder garnichts ausgefüllt wurde, dann Formular mit Werten zeigen.
Drei nacheinander folgende IF-Abfragen, nicht verschachtelt.
Wenn du die Formularfelder ausgibst, kannst du ja mit
<input type="text" name="name" value="<?php echo $name; ?>">
den aktuell bekannten Variablenwert ausgeben. Wurde kein Formular gesendet (weil die Seite das erste Mal aufgerufen wurde), dann ist $name leer, und du kriegst auch ein leeres Formularfeld.
An dieser Lösung ist möglicherweise zu kritisieren, daß man von extern Variablenwerte einschleusen kann, aber da du ohnehin Werte prüfst, dürfte das nicht unbedingt schlimm sein. Der "Trick" ist, statt direkt auf Variablen zuzugreifen, diese aus den Hashes $HTTP_POST_VARS oder $HTTP_GET_VARS auszulesen.
Also dann <?php echo $HTTP_POST_VARS['name']; ?>. So nimmst du garantiert den Variablenwert, der per POST übermittelt wurde.
- Sven Rautenberg