首頁 >後端開發 >PHP問題 >php取得不到post資料怎麼辦

php取得不到post資料怎麼辦

藏色散人
藏色散人原創
2020-08-01 10:44:062804瀏覽

php取得不到post資料的解決方法:1、找到「php.ini」設定文件,尋找「enable_post_data_reading」變數;2、將專案建立在Apache伺服器的工作目錄下;3、從PhpStorm中開啟瀏覽器調試程序,並更改配置。

php取得不到post資料怎麼辦

推薦:《PHP影片教學

初學php,用echo $_POST["variable"]和var_dump($_POST) 都取得不到post資料。

解決方法如下:

1.找到php.ini 設定檔,尋找enable_post_data_reading變量,確保其開啟狀態:

2 .觀察你的運行php的瀏覽器位址,會發現在PhpStorm中開啟瀏覽器使用的服務埠號碼是63342(URL是localhost:63342/這樣的形式)

#因此問題的原因在於:PhpStorm預設使用的是自帶的內部伺服器,卻不使用xampp裡面的apache伺服器。 phpStorm這個內建伺服器使用63342端口,而且伺服器內部有問題,導致POST方法異常;而如果把項目放在Apache伺服器的工作目錄下,在地址列輸入localhost,此時使用的是Apache伺服器,預設端口號為80,Apache伺服器可以正常運作程式。

既然PhpStorm內部伺服器有問題,那麼解決方法就是想辦法不使用內部伺服器。有兩種方法:

1.將專案建立在Apache伺服器的工作目錄下,每次執行時在瀏覽器網址列直接輸入localhost位址

2.如果仍希望透過從PhpStorm中開啟瀏覽器偵錯程序,可以透過變更組態實作:

(1)先將apache伺服器目錄對應到本機目錄

做法如下:

##1. 找到/xampp/apache/conf/httpd.conf 檔案

2. 找到92aac8a5cc4b2dcfdd313b09f4c3c819 06509456e3f48e01a40badedd77d458e 程式碼區塊

3. 在92aac8a5cc4b2dcfdd313b09f4c3c819如下列程式碼:

    # /phpworkspace/ : 其它磁碟上目錄的別名, 就是你想要映射過來的目錄的別名  
  1. ## "E/phpworkspace/" : 這個是目錄的絕對路徑  
  2. Alias /phpworkspace/ "E/phpworkspace/"  
  3. # 現在就可以透過 //localhost/phpworkspace/ 存取 E盤下phpworkspace資料夾裡的專案了  
4. 在與1d2836e31d6e6e17d304ed49097f9974 同級的地方加上一段程式碼, 如下:

##
<Directory "E/phpworkspace/">  
    AllowOverride All  
    Options Indexes FollowSymLinks Includes ExecCGI  
    Require all granted  
</Directory>
  1. #完成. 現在重啟Apache, 訪問: http://localhost/phpworkspace/ 就可以了

(2)然後在PhpStorm中,依序找到File->Settings->Build, Execution, Deployment->Deployment,初始是空的,點擊綠色的加號添加本地伺服器,名字localhost就好了,Type選擇In place:

創建完成後,右側Connection標籤下默認的設定已經將伺服器設定為80埠下的Apache伺服器,即http://localhost

將其改為你對應到本機專案的工作目錄:

Mappings標籤下的Local path設定成你本地專案的目錄:

此時從PhpStorm點擊瀏覽器,存取的URL已經沒有了63342端口這個字段,而是使用了本地Apache伺服器,相應的表單資料也可以正常接收了

以上是php取得不到post資料怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn