所以我試圖學習HTML + PHP,但它似乎我已經打了一堵牆。如果我在我的html表單中使用GET方法,那麼參數會發送到我的php文件中,但如果我嘗試使用POST方法執行相同操作,則不會發送任何參數。我可以使用GET方法發送表單數據,但不發佈,爲什麼?
@編輯:我已經記下了這裏顯示的初始代碼示例,因爲我發現它不是特定於該代碼的問題。相反,我張貼的也有同樣問題的基本方式和基本的PHP腳本:
HTML文件:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="testingForm.php" method="POST">
INPUT: <input type="text" id="iTesting" name="nTesting"/><br/>
<input type="submit" value="SUBMIT"/>
</form>
</body>
</html>
php文件:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<title></title>
</head>
<body>
<?php
/* THIS WORKS: */
/*if (isset($_GET["nTesting"]))
echo "It is working! ".$_GET["nTesting"];
else
echo "It is NOT working! input: ".$_GET["nTesting"];
echo "<br/>".$_SERVER['REQUEST_METHOD']."<br/>";
echo "<br/>".var_dump($_GET);//*/
/* THIS DOESN'T: */
if (isset($_POST["nTesting"]))
echo "It is working! ".$_POST["nTesting"];
else
echo "It is NOT working! input: ".$_POST["nTesting"];
echo "<br/>".$_SERVER['REQUEST_METHOD']."<br/>";
echo "<br/>".var_dump($_POST);//*/
?>
</body>
</html>
如前所述,如果我改變GET的表單方法,我完全沒有問題。但是,使用POST方法時似乎不會發送數據。
這是使用GET方法的輸出:
這是工作!輸入:測試
GET
陣列(1){[ 「nTesting」] =>串(4) 「測試」}
這是使用POST方法的輸出:
它不工作!輸入:
POST
陣列(0){}
此外,使用開發工具我可以看到有一個參數nTesting:在網絡選項卡的FORMDATA部分測試。然而,沒有顯示。
'的var_dump($ _ POST);' – rtfm
var_dump($ _ POST)的@rtfm響應;是數組(0){} – MuriloRM
什麼是$ _SERVER ['REQUEST_METHOD']'? – Barmar