2014-02-11 29 views
-1

爲什麼我得到這個錯誤是它只是一個假的錯誤,我應該用'@'隱藏它嗎?即時作出登錄/註冊系統一切工作正常只有這個錯誤顯示atm ..但我可以註冊或登錄更改密碼的一切爲什麼我得到錯誤undefined veriable當所有的工作正常

注意:未定義的變量:名稱在C:\ xampp \ htdocs \ loginsistem \ classes \ Cookie.php第4行

class Cookie { 
    public static function exists() { 
     return (isset($_COOKIE[$name])) ? true : false; 
    } 
    public static function get($name) { 
     return $_COOKIE[$name]; 
    } 
    public static function put($name, $value, $expiry) { 
     if(setcookie($name, $value, time() + $expiry, '/')) { 
      return true; 
     } 
     return false; 
    } 
    public static function delete($name) { 
     self::put($name, '', time() - 1); 
    } 

} 
+2

沒有這種「假錯誤」,也不是使用'@'的好主意。在你的'exists()'函數中,你引用'$ name',但它沒有在該函數中設置。您可能希望將其添加爲參數。 –

+1

'$ name'不在訪問'$ _COOKIE [$ name]',exists()' –

+1

的第一個函數的作用域中。您將'$ name'作爲參數傳遞給get()',我們只能假設你的意思是和'public static function exists($ name)一樣' –

回答

0

只要改變你的方法的簽名是這樣的。

public static function exists($name) { 
          //^^^^^^ <--------- Pass the parameter $name 

如果你有一個很好的PHP IDE,你可能在編寫代碼的時候發現了這個錯誤。

相關問題