Heim >Datenbank >MySQL-Tutorial >Kann ich in PHP sowohl GET- als auch POST-Methoden in einem einzigen Formular verwenden?
POST- und GET-Daten gleichzeitig in PHP
Problem:
Ein Benutzer sucht Hilfe bei Verwendung von GET- und POST-Methoden in einem einzigen Formular. GET ist erforderlich, um die Eingaben des Benutzers anzuzeigen, während POST erforderlich ist, um Daten aus einer MySQL-Datenbank basierend auf dieser Eingabe abzurufen. Beim Versuch dieser Kombination stößt der Benutzer auf undefinierte Fehler.
Antwort:
Einschränkungen für HTTP-Anfragen
HTTP-Anfragen können nur Folgendes haben ein einzelnes Verb (POST, GET, PUT usw.). Daher ist die direkte Verwendung sowohl der GET- als auch der POST-Methode nicht möglich.
Problemumgehung: Hinzufügen von GET-Parametern zur POST-Anfrage
Während die direkte Verwendung von GET und POST nicht möglich ist , können Sie GET-Parameter zu einer POST-Anfrage hinzufügen, indem Sie die URL-Abfragezeichenfolge verwenden:
<form name="y" method="post" action="y.php?foo=bar">
Mit diesem Ansatz füllt PHP automatisch die Variable $_GET['foo'], auch wenn die Anfrage über gesendet wurde POST.
Separate Formularübermittlungen
Es ist jedoch wichtig zu beachten, dass die beabsichtigte Aktion des Benutzers zwei separate Formularübermittlungen umfasst: eine für GET (Jahreseingabe) und eine für POST (Datenbankzugriff).
Das gleichzeitige Senden von zwei Formularen innerhalb einer einzigen Anfrage ist nicht möglich. Jedes Formular muss unabhängig übermittelt werden:
Das obige ist der detaillierte Inhalt vonKann ich in PHP sowohl GET- als auch POST-Methoden in einem einzigen Formular verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!