注意:未定义的索引:已记录

时间:2014-12-19 15:00:48

标签: php html mysql mysqli

注意:未定义的索引:已记录

这很奇怪,我无法弄清楚,因为我在整个网站上使用了两次会话记录= true / false,它完美无瑕。

我尝试使用isset,只返回一个空白屏幕

<?php 
        if($_SESSION['logged']==true)
          { 

            echo '<div class="container">
                    Logged in!
                  </div>'; 

          }
        elseif($_SESSION['logged']==false)
          {
            echo '<div class="container">
                    You must be logged in to use the events service
                  </div>';     
          }
      ?>

会话是从另一个文件设置的。

if($count==1)
  {
    $_SESSION['logged']=true;
    $_SESSION['username']=$myusername;
    header("Location: ../index.php");
    exit();
  }
else
  {
    $_SESSION['logged']=false; 
      header("Location: loginError");
    exit();
  }

我无法弄清楚的是为什么错误消息在我这次使用时显示而不是其他2次?如果您忽略错误消息,if和else语句实际上正常工作!

前两次我使用此会话记录我也没有显示错误消息,它工作正常。

1 个答案:

答案 0 :(得分:0)

      session_start();
      if(isset($_SESSION['logged']) && $_SESSION['logged']==true)
      { 

        echo '<div class="container">
                Logged in!
              </div>'; 

      }
      else //else no session was set or it was not true
      {
        echo '<div class="container">
                You must be logged in to use the events service
              </div>';     
      }