php post失效的解決辦法:1、修改代碼為“action=''”;2、執(zhí)行“var_dump($_POST);”語句;3、修改php.ini文件;4、重新啟動apache即可。
本文操作環(huán)境:windows7系統(tǒng)、PHP7.1版,DELL G3電腦
php post 失效怎么辦?
具體問題描述:
PHP POST失效?不起作用?
<?php echo $_POST['ss'];?> <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post"> <input name="ss" type="text" /> <input type="submit" name="submit"> </form>
單擊提交時,此代碼應(yīng)打印在文本框name =“ ss”中輸入的內(nèi)容。
但是它不能打印。使用method =“ get”,但不使用post,這是什么問題。
解決辦法:
如果您只是刷新頁面,請執(zhí)行以下操作:
action=''
代替:
action="<?php echo $_SERVER['PHP_SELF'];?>"
另外,將其添加到第2行以查看$ _POST數(shù)組中存儲了什么(如果有的話):
var_dump( $_POST );
嗯…所以提交時是空的?嘗試將其添加到您的php文件的頂部:
if(empty($_SERVER['CONTENT_TYPE'])) { $_SERVER['CONTENT_TYPE'] = "application/x-www-form-urlencoded"; }
好的,現(xiàn)在檢查您的php.ini(通常在/ etc中需要sudo或root):
post_max_size = 8M variables_order = "EGPCS"
您設(shè)置了這兩個規(guī)則嗎?如果是這樣,請注意要分配多少內(nèi)存。取決于系統(tǒng)規(guī)格,任何超過2048MB的空間都可能給您帶來麻煩。
注意:如果您對php.ini文件進行了更改,并且PHP作為apache模塊運行,則需要重新啟動apache。類似于以下內(nèi)容:
sudo /etc/init.d/httpd restart
推薦學(xué)習(xí):《PHP視頻教程》