2013-11-23 23 views
0

所以我的問題真的很煩人。我有一個表格,我爲變量賦值給我輸入:無法修復不明索引

$rememberMe = $_POST['rememberMe']; 

每次記得我沒有被選中,我得到這個錯誤,我無法想出一個辦法來阻止這一切。我研究了很多圍繞stackoverflow的主題,但所有這些修復似乎都不起作用。我不知道爲什麼。我三倍檢查我的變量,他們是完美的,只是不知道它爲什麼顯示這個錯誤!

所有幫助表示讚賞。

感謝

+3

'$了rememberMe = isset($ _ POST [ '了rememberMe'])真:假;' –

+0

你一定不會在所有做了很多的研究,這被問了很多。戴夫的答案會爲你排序。 – naththedeveloper

回答

1

這應該使其工作。

$rememberMe = isset($_POST['rememberMe'])?true:false; 

,或者讓它吃晚飯明確

if(isset($_POST['rememberMe'])){ 
    $rememberMe = $_POST['rememberMe']; 
} 
else 
    $rememberMe = null; // you can put false instead of null according to your situation 
+0

謝謝,這個作品:) –

+0

投票它作爲最好的答案將是非常有利的,謝謝你的讚賞。 –

1

可以避開通知錯誤是這樣的:

if (isset($_POST['rememberMe'])) { 
    // the key 'rememberMe' is a valid key of the array $_POST 
    $rememberMe = $_POST['rememberMe']; 
} else { 
    $rememberMe = false; // or null or whatever value that suits you most 
} 

或短一點的方法是使用所謂的三元運算符:

$rememberMe = isset($_POST['rememberMe']) ? $_POST['rememberMe'] : false; 

注:如果您使用$_GET$_POST變量,我建議您在開始時使用以前的方法之一腳本並且從不在腳本中使用$_GET['something']兩次。它有助於避免問題並使代碼可測試。

0

你應該檢查$_POST['rememberMe']是否存在

$rememberMe = isset($_POST['rememberMe'])?$_POST['rememberMe']:false; 

,你也可能需要檢查前形式的checkbox是否公佈其namerememberMe(不id