我只能';不要破坏php中的会话

我只能';不要破坏php中的会话,php,Php,当我通过销毁会话注销并启动另一个会话时,它总是显示我启动的第一个会话信息$\u session['username'] 我的意思是: 我第一次使用此用户名-->AAAAAA登录时启动了会话 并使用包含以下代码的文件logout.php销毁会话: session_start(); session_destroy(); header("location: login.php"); 并使用另一个用户名-->BBBBBB登录 它总是显示我第一次使用-->AAAAAA登录的用户名 问题出在哪里 下面是代

当我通过销毁会话注销并启动另一个会话时,它总是显示我启动的第一个会话信息$\u session['username']

我的意思是: 我第一次使用此用户名-->AAAAAA登录时启动了会话 并使用包含以下代码的文件logout.php销毁会话:

session_start();
session_destroy();
header("location: login.php");
并使用另一个用户名-->BBBBBB登录 它总是显示我第一次使用-->AAAAAA登录的用户名

问题出在哪里

下面是代码(login.php)

来自:

为了完全终止会话(如注销用户) 会话id也必须取消设置。如果使用cookie来传播 会话id(默认行为),则会话cookie必须为 删除。setcookie()可用于此目的

:

我同意@Valery Viktorovsky,但是, 由于
php7
无法使用
会话\u重新生成\u id(true)销毁会话后

变化日志说:

此选项适用于PHP7或更高版本:

ob_start();
session_start();
session_unset();
session_regenerate_id(true);
session_unset();
session_destroy();
session_write_close();
setcookie(session_name(),'',0,'/');
header('LOCATION: index.php');

因此,如果您不想

发送邮件头后是否设置会话,您可以试试这个方法?它将永远不会被更新。替换那些行,它应该工作。另一件事,根据:,考虑删除SeaStIsId的cookie,只使用MD5来破解密码是不够的。改用bcrypt。我应该在这里做什么?我仍然是php的新手,这是我的项目期末考试:(我必须用你刚才给我的代码更改注销文件吗????添加到注销脚本:session_unset();session_destroy();session_write_close();setcookie(session_name(),“”,0,“/”);session_regene_id(true);然后将用户重定向到主页。以下是链接:我仍在等待,请:(我不知道。我尝试了你的解决方案,但仍然不起作用..我刚刚发现,当我清空db表中的所有数据时,它总是将$u会话重定向到第一个共享文章的用户..介意看一下我在这里提供给你的脚本吗?拜托,这非常紧急,没有足够的时间完成此项目。。。只要看一下索引文件,看看我是否犯了错误,因为我真的陷入了这个问题,不知道该怎么办:(
  <?php session_start();?>
  <h3><?php echo $_SESSION['username']; ?></h3>
session_unset();
session_destroy();
session_write_close();
setcookie(session_name(),'',0,'/');
session_regenerate_id(true);
7.0.0 - session_regenerate_id() saves old session data before closing.
ob_start();
session_start();
session_unset();
session_regenerate_id(true);
session_unset();
session_destroy();
session_write_close();
setcookie(session_name(),'',0,'/');
header('LOCATION: index.php');