Session 注销后未定义的会话变量

Session 注销后未定义的会话变量,session,login,logout,Session,Login,Logout,我做了一个登录页面,引导你进入主页。 在主页上我写了这样的代码: session_start(); <?php echo 'welcome, '. $_SESSION['email']; ?> session_start(); 这将欢迎任何人登录主页。如果有人从主页上注销,也会导致他进入主页。就像从论坛登录和注销一样。一切正常,但问题是当我从主页注销或未登录时,主页中出现错误: 注意:未定义的变量:\在第25行的C:\wamp\www\index.php中的会话 我如

我做了一个登录页面,引导你进入主页。 在主页上我写了这样的代码:

 session_start();   
<?php  echo  'welcome, '. $_SESSION['email']; ?>
session_start();
这将欢迎任何人登录主页。如果有人从主页上注销,也会导致他进入主页。就像从论坛登录和注销一样。一切正常,但问题是当我从主页注销或未登录时,主页中出现错误:

注意:未定义的变量:\在第25行的C:\wamp\www\index.php中的会话

我如何解决这个问题

这是我的注销代码:

<?php
session_start();
session_destroy();
header("location:index.php");
?>


您的注销代码是什么样子的?您是否使用unset($\u SESSION)而不是SESSION\u destroy?

您的注销代码是什么样子的?是否使用未设置($\u会话)而不是会话销毁?

进行简单检查以查看会话是否已设置:

<?php
  session_start();

  if(isset($_SESSION['email']) === true){
     // Say "Welcome"
     echo 'Welcome, ' . $_SESSION['email'];
  } else {
    // Do nothing, the session is not set
  }
?>

编辑:我已经阅读了您的评论,我建议logout.php代码为:

<?php
  session_start();

  // Destroy the sessions
  // If you have more sessions, add more like below, but replace email if it is different:
  // unset($_SESSION['session_name']);
  unset($_SESSION['email']);
  session_destroy();

  header("Location: index.php");

?>

进行简单检查,查看会话是否已设置:

<?php
  session_start();

  if(isset($_SESSION['email']) === true){
     // Say "Welcome"
     echo 'Welcome, ' . $_SESSION['email'];
  } else {
    // Do nothing, the session is not set
  }
?>

编辑:我已经阅读了您的评论,我建议logout.php代码为:

<?php
  session_start();

  // Destroy the sessions
  // If you have more sessions, add more like below, but replace email if it is different:
  // unset($_SESSION['session_name']);
  unset($_SESSION['email']);
  session_destroy();

  header("Location: index.php");

?>


我把它放在我的quisition中,index.php中的session\u start是第一件事(或者至少在html标记之前)?我把它放在我的quisition中,index.php中的session\u start是第一件事(或者至少在html标记之前)?