如何在php中显示和隐藏菜单

时间:2014-09-03 13:06:21

标签: php

登录后我有会话。问题,当会话不存在时,将出现错误:

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"

我希望支持会话检查代码段。 谢谢。

1 个答案:

答案 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'] != '')

确保存在会话变量并且该变量不为空。