错误:注意:未定义的索引:SESSION_ADMIN_MEMBER_TYPE in

时间:2010-10-10 02:28:36

标签: php session

嗨,我收到此错误提示:未定义索引:SESSION_ADMIN_MEMBER_TYPE in ...如何修复此错误?

if((isset($_GET['p']) && $_GET['p'] != 'docs') 
&& ( $_SESSION["SESSION_ADMIN_MEMBER_TYPE"] == 'normal' 
|| $_SESSION["SESSION_ADMIN_MEMBER_TYPE"] == 'restricted' 
|| $_SESSION["SESSION_ADMIN_MEMBER_TYPE"] == 'c_account' ) )

3 个答案:

答案 0 :(得分:2)

这意味着未显示SESSION_ADMIN_MEMBER_TYPE(显然)。所以你可以添加一个额外的支票:

isset($_SESSION['SESSION_ADMIN_MEMBER_TYPE'])

到你的条件逻辑。然后你将取消通知并保持相同的检查。确保在正确的时间设置该会话变量(并且它被正确命名)。

请注意,此通知无害。它只是让你知道密钥没有设置。

答案 1 :(得分:1)

这是因为您在设置之前检查会话变量。所以,添加一个检查以查看它是否首先设置

if((isset($_GET['p']) && $_GET['p'] != 'docs' &&
isset($_SESSION["SESSION_ADMIN_MEMBER_TYPE"]))
&& ( $_SESSION["SESSION_ADMIN_MEMBER_TYPE"] == 'normal' 
|| $_SESSION["SESSION_ADMIN_MEMBER_TYPE"] == 'restricted' 
|| $_SESSION["SESSION_ADMIN_MEMBER_TYPE"] == 'c_account' ) )

答案 2 :(得分:1)

if((isset($_GET['p']) && $_GET['p'] != 'docs') 
&& isset($_SESSION["SESSION_ADMIN_MEMBER_TYPE"]) && ( $_SESSION["SESSION_ADMIN_MEMBER_TYPE"] == 'normal' 
|| $_SESSION["SESSION_ADMIN_MEMBER_TYPE"] == 'restricted' 
|| $_SESSION["SESSION_ADMIN_MEMBER_TYPE"] == 'c_account' ) )

检查是否设置了$ _SESSION [“SESSION_ADMIN_MEMBER_TYPE”]