Das klingt wie eine dumme Frage, also entschuldige ich mich im Voraus.Formularübergabevorschau mit Formularüberprüfung (PHP)
Ich habe ein PHP-Formular, mit seiner Aktion Buchung an sich selbst, so dass ich einige Validierung durchführen kann, um sicherzustellen, dass Textfelder, ein paar Kontrollkästchen und ein paar Optionsfelder ausgewählt sind. Nachdem ich bestätigt habe, dass keine Formfehler vorliegen, muss der Benutzer eine Vorschau anzeigen, was er eingegeben hat, bevor er die Informationen an eine Datenbank senden kann.
Für die Vorschau der Formularübermittlungsdetails würde logisch page1.php <form action="page2.php">
haben und page2.php würde dem Benutzer erlauben, eine Vorschau zu sehen, was sie eingereicht haben.
Aber für die Formularüberprüfung sollte das Formular logischerweise an sich selbst übergeben werden, damit es alle erforderlichen Felder validieren kann, die auf derselben Seite eingegeben werden.
Also gibt es eine Möglichkeit, dass ich den Benutzer auf eine "nächste Seite" leiten kann, nachdem das Formular durch Vorlage an sich selbst validiert hat, so dass sie die Informationen in der Vorschau anzeigen können?
Hinweis: ich ein klassisches ASP-Formular am Umschreiben, das dies tut:
if errorMsg = "" then
response.redirect "verify.asp"
else
session("errorMsg") = errorMsg
response.redirect "default.asp"
end if
ich im Fall von PHP, dem „else“ Teil eines ähnlichen bedingten wäre unnötig übernehmen, da Es postet bereits zu sich selbst, es ist nur wenn das Array der Fehlermeldung leer ist, dass es auf die Verify-Seite umleiten sollte.
Eigentlich auf weitere Inspektion, wird dies nicht funktionieren. Die PHP-Dokumentation besagt, dass die Header-Funktion verwendet werden muss ** bevor ** irgendeine Ausgabe gesendet wird. Ich bin ziemlich sicher, dass mein Code auftritt, nachdem die '' '' '' 'geöffnet ist, was zu einem Fehler führen wird. – Tiffany
Aber das gibt mir eine Vorstellung davon, wo ich suchen muss. Ich fand heraus, dass es keine PHP-Weiterleitungsalternative gibt und dass die empfohlene Richtung Javaskript und Meta-Tags verwendet, Meta-Tags werden berücksichtigt, wenn JavaScript deaktiviert ist. – Tiffany
@Tiffany Es sollte keinen Grund geben, warum die Formularverarbeitung nicht vor der Ausgabe von HTML durchgeführt werden kann. Allgemeiner kann die Tatsache, dass eine Seite auf diese Weise an sich selbst gepostet wird, zu anderen Problemen führen (z. B. wenn ein Benutzer mit der Zurück-Schaltfläche des Browsers auf die Seite zurückgreift, fordert der Browser den Benutzer auf, das Formular erneut zu senden/erneut zu senden). Es wäre eine bessere Option, einen etablierten Framework-Eintrag in einer separaten Datei zu verwenden, um das Formular zu bearbeiten und die Weiterleitungen auszuführen. –