儘管在PHP 中提交表單,$_POST 數組仍為空
對PHP 表單提交進行故障排除時遇到的常見難題是,儘管成功,但仍遇到空$_POST 數組資料提交。要解決此問題,必須了解可能導致此行為的潛在因素。
在這種特殊情況下,使用者已驗證表單資料確實透過 file_get_contents('php:/ /input'),但 $_POST/$_REQUEST 陣列仍為空。這表明存在需要進一步調查的具體問題。
提供的解決方案指出了問題的根源:在表單提交中使用 JSON 內容類型時,預設不會填入 $_POST 陣列。出現這種情況是因為 JSON 資料的處理方式與常規表單編碼資料不同。
解決問題
為了解決此問題,使用者實作了一個解決方案,該解決方案涉及解碼來自file_get_contents('php://input') 結果的JSON 資料並手動填入$_POST array:
$_POST = json_decode(file_get_contents("php://input"), true);
透過解碼後的JSON資料分配給 $_POST 數組,程式設計師確保可以按預期方式存取表單數據,即使原始表單提交導致空的 $_POST 數組.
以上是在 PHP 中提交 JSON 表單時,為什麼我的 $_POST 數組為空?的詳細內容。更多資訊請關注PHP中文網其他相關文章!