Behebung einer POST-Request-Fehlfunktion in PHP
Im dargestellten Codeausschnitt:
<?php echo $_POST['ss'];?><br><form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post"><br><input name="ss" type="text" /><br><input type="submit" name="submit"><br></ form><br>
Die Absicht besteht darin, die Eingabe aus dem Textfeld zu erfassen und anzuzeigen, wenn auf die Schaltfläche „Senden“ geklickt wird. Die Ausgabe bleibt jedoch leer. Während die Methode „get“ nahtlos funktioniert, stellt die Methode „post“ ein Problem dar.
Fehlerbehebung bei der POST-Anfrage
Um dieses Problem zu beheben, beachten Sie die folgenden Schritte :
Überprüfen Sie das Aktionsattribut:
Wenn Sie die Seite aktualisieren, setzen Sie das Aktionsattribut auf eine leere Zeichenfolge, z. B.:
<code class="php">action=''</code>
statt:
<code class="php">action="<?php echo $_SERVER['PHP_SELF'];?>"</code>
Konfigurieren Sie die POST-Datenverarbeitung:
Fügen Sie die folgende Zeile am Anfang Ihrer PHP-Datei hinzu, um POST-Daten ordnungsgemäß zu verarbeiten:
<code class="php">if(empty($_SERVER['CONTENT_TYPE'])) { $_SERVER['CONTENT_TYPE'] = "application/x-www-form-urlencoded"; }</code>
Überprüfen Sie die php.ini-Einstellungen:
Stellen Sie sicher, dass die folgenden Einstellungen in Ihrer php.ini-Datei vorhanden sind:
<code class="ini">post_max_size = 8M variables_order = "EGPCS"</code>
Apache neu starten (falls erforderlich):
Wenn Sie php.ini ändern und PHP als Apache ausgeführt wird Modul starten Sie Apache mit einem Befehl wie:
<code class="bash">sudo /etc/init.d/httpd restart</code>
Das obige ist der detaillierte Inhalt vonWarum erfasst die POST-Anfrage trotz gültigem Code keine Eingaben in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!