Addressing POST Request Malfunction in PHP
In the presented code snippet:
<pre><?php echo $_POST['ss'];?>
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
<input name="ss" type="text" />
<input type="submit" name="submit">
</form>
</pre>
The intention is to capture the input from the text box and display it when the submit button is clicked. However, the output remains blank. While the method="get" works seamlessly, method="post" poses a problem.
Troubleshooting the POST Request
To resolve this issue, consider the following steps:
Check the Action Attribute:
If you are refreshing the page, set the action attribute to an empty string, e.g.:
action=''
instead of:
action="<?php echo $_SERVER['PHP_SELF'];?>"
Configure POST Data Handling:
Add the following line at the beginning of your PHP file to handle POST data properly:
if(empty($_SERVER['CONTENT_TYPE']))
{
$_SERVER['CONTENT_TYPE'] = "application/x-www-form-urlencoded";
}
Review php.ini Settings:
Ensure that the following settings exist in your php.ini file:
post_max_size = 8M
variables_order = "EGPCS"
Restart Apache (if necessary):
If you modify php.ini and PHP runs as an Apache module, restart Apache using a command like:
sudo /etc/init.d/httpd restart
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3