登录后我有会话。问题,当会话不存在时,将出现错误:
Notice: Undefined index: client-rajabot in .......
我希望,当我能够参加会议时。菜单“mypage”将出现,当没有这样的会话时,不显示“mypage”。
我希望支持会话检查代码段。
谢谢你。会话名称= $ _SESSION ['client-rajabot']
。
我在菜单上设置了包含这样的代码:
<div id="navbar">
<ul>
<li<?php if ($thisPage=="Home")echo " id=\"currentpage\""; ?>><a href="index">Home</a>
<li<?php if ($thisPage=="Register")echo " id=\"currentpage\""; ?>><a href="register">Register</a>
<?php
session_start();
if($_SESSION['client-rajabot']!='' || $_SESSION['client-rajabot'] != null)
{
echo "<li if ($thisPage==ClientPage) id=\currentpage\><a href=client-page>MyPage</a>";
}
?>
<li<?php if ($thisPage=="Topup")echo " id=\"currentpage\""; ?>><a href="topup">TopUp</a>
<li<?php if ($thisPage=="Login")echo " id=\"currentpage\""; ?>><a href="login">Login Member</a>
</ul>
问题,当会话不存在时,将出现错误:
Notice: Undefined index: client-rajabot in .......
我希望,当我能够参加会议时。将出现菜单"mypage"
,如果没有此类会话,则不会显示"mypage"
。
我希望支持会话检查代码段。 谢谢。
答案 0 :(得分:0)
尝试使用
if(isset($_SESSION['client-rajabot']))
您正在使用的条件$_SESSION['client-rajabot']!=''
要求将$_SESSION['client-rajabot']
与空字符串进行比较。这就是为什么当你没有设置'client-rajabot'时你会收到错误。
isset()
命令检查变量是否设置。应该注意,如果变量设置为NULL,isset()
返回FALSE。这意味着您也不必检查NULL。如果会话变量有任何原因是空字符串(它不应该是),您可以使用
if(isset($_SESSION['client-rajabot']) && $_SESSION['client-rajabot'] != '')
确保存在会话变量并且该变量不为空。