0
最近開始學習PHP和我試圖讓get方法工作。未定義的索引'用戶名'在/var/www/html/test/foo.php在線2
這是HTML表單我測試的:
<!DOCTYPE html>
<html>
<body>
<form action="foo.php" method="get">
Name: <input type="text" name="username" /><br />
Email: <input type="text" name="email" /><br />
<input type="submit" name="submit" value="Submit me!" />
</form>
</body>
</html>
我研究後發現,你應該使用isset()函數來檢查$ _GET數組包含的值。所以,我想(這是foo.php):
<?php
if(isset($_GET['username']))
{
echo $_GET['username'];
}
else
{
echo "username not passed <br />";
}
if(isset($_GET['email']))
{
echo $_GET['email'];
}
else
{
echo "email not passed";
}
?>
似乎什麼是錯的,試圖通過GET方法傳遞的價值觀,我試着用後完全一樣的東西,更換方法=「獲取」,以method =「post」,並在PHP文件中將$ _GET更改爲$ _POST。這與post方法完美配合。我知道你不應該通過get方法傳遞電子郵件等敏感信息,但我只是想測試它。
這是輸出後,我,我得到提交表單: 用戶名不通過不通過
瞭解PHP的基礎知識! – Sliq
@Panique「*基礎知識*」?他們不[手冊](http://php.net/manual/en/function.isset.php)說'isset()'可以用來檢查索引是否在數組中設置?也許你可以回答這個問題,教導我們這些以這種方式使用它的人,而不是增加一些無禮的和無益的評論? – newfurniturey
在面值,你的代碼沒有錯。你確定你的2段代碼的當前版本是排隊的嗎(方法是獲取和使用$ _GET或w /相同的後; IOW不是方法得到,但使用$ _POST或反之亦然)?這兩個代碼位於同一個文件foo.php中,並且你剛剛在初始加載時看到那個msg? –