2012-11-05 36 views
0

Possible Duplicate:
PHP: Notice: Undefined index where the session variable is defined
PHP: 「Notice: Undefined variable」 and 「Notice: Undefined index」PHP公告:未定義的索引錯誤與會話

好了,這是錯誤:

Notice: Undefined index: overview_id in C:\xampp\htdocs\site\home.php on line 6

這是我的代碼:

<?php session_start(); 

    $sess = $_SESSION["overview_id"]; 

    if(isset($sess)){ 
    header("Location: account.php"); 
    } 

?> 

任何幫助將是很酷。

謝謝。

+0

$ _SESSION [ 「overview_id」]沒有定義。就像錯誤信息所示 – 2012-11-05 23:31:48

+1

這不是一個錯誤,它是一個*通知*,它只是告訴你一些不錯的做法 –

+0

我不明白它:如果你檢查'overview_id'元素是否被定義(你用'isset'來檢查它),爲什麼你要創建一個臨時變量,給它賦值,然後檢查這個變量?爲什麼不只是'if(isset($ _ SESSION ['overview_id']))'然後呢?我的意思是,這個邏輯背後的推理是什麼? – raina77ow

回答

0

你的第三個行只是改變

if (isset($_SESSION['overview_id'])){ 

相反,並刪除第二行。

0

您設置SESSION_ID前檢查,所以你設置到另一個變量之前始終必須至少有默認值分配的,所以最好使用此

if(isset($_SESSION["overview_id"])){ 
    header("Location: account.php"); 
} 
0

在您所提供的代碼的條款:

<?php 
session_start(); 

if(isset($_SESSION["overview_id"])){ 
    header("Location: account.php"); 
} 

?> 

這將解決該問題

0

因爲$_SESSION["overview_id"]沒有設置,那麼$sess = $_SESSION["overview_id"];將失敗。這是你如何做你的測試:

<?php session_start(); 

    if (isset($_SESSION["overview_id"])) { 
     header("Location: account.php"); 
    } 
?>