2014-09-28 70 views
0

全部,我之前在論壇上發佈了一個代碼,沒有人能夠回答這個問題。 「註冊」和「註銷」都是其他頁面上的值類型的按鈕,這些頁面鏈接到此頁面代碼,名爲login.phpGET POST錯誤

問題是我一直收到未定義的索引。有沒有辦法更好地調用它?

我..

if ($_POST['submit']=="Sign Up") { 

和..

if($_GET["logout"]==1 AND $_SESSION['id']) { session_destroy(); 
     header("Location:logout.php");  
} 
+1

http://php.net/isset + http://php.net/var_dump – zerkms 2014-09-28 00:18:34

+0

你究竟在哪裏得到'undefined index' - 哪一行? – 2014-09-28 00:18:39

+0

在這兩條線上 – Anthony 2014-09-28 00:21:18

回答

0

由於POST和GET變量必須不能發送可言,總是用類似這樣的方案:

$var = isset($_POST['fieldname']) ? $_POST['fieldname'] : null; 
if (!isset($var)) 
{ 
    // errorhandling 
} 
else 
{ 
    // proceed ... 

您收到的錯誤表明至少有一個POST和/或GET變量未設置或拼寫錯誤。

0

正如Axel指出的那樣,檢查$ _POST是否具有使用isset()函數的「submit」值,如果已設置,您可以按照您的操作方式訪問該值。如果$ _POST沒有這個值,這意味着它沒有被髮送。

所以,在你的HTML中,檢查按鈕確實是這樣調用的,並且它在ACTION屬性和METHOD設置爲POST的標籤內。

還要小心與1比較,因爲在PHP中也是正確的。