PHP session_destroy()警告会话对象销毁失败[重复]
Posted
技术标签:
【中文标题】PHP session_destroy()警告会话对象销毁失败[重复]【英文标题】:PHP session_destroy() warning Session object destruction failed [duplicate] 【发布时间】:2013-06-26 08:17:55 【问题描述】:我有这个 php 脚本,但在销毁会话时遇到问题:
<?php
session_start();
if(isset($_SESSION['id_client']) && isset($_POST['ok']))
session_destroy();
echo 1;
?>
我收到此警告:
警告:session_destroy():会话对象销毁失败 C:\xampp\htdocs\template\nota\finalizare_nota_mobil.php 在第 6 行
当我简单地使用...
<?php
session_start();
session_destroy();
?>
...它有效。有什么想法吗?
编辑: 实际上,如果我从另一个位置调用它,则第二个有效(我应该提到我从 jQuery 帖子中调用第一个脚本)
编辑2: 有点跟踪 jQuery $.post 的问题,但我不明白为什么。代码如下:
$.post("../template/nota/finalizare_nota_mobil.php",ok:1, function(data, textStatus,jqXHR)
if(data==1)
alert("Total: "+totalPartial);
window.location.href="http://qr-menu.ro/";
);
【问题讨论】:
什么你没有回应什么? 在调用 session_start() 之后;尝试调用 session_id() 并让我们知道您所看到的 - 尝试 echo session_id(); leej0qrdq5gsjg59no6oaqbgq6 。会话存在,因为如果我从不同位置调用脚本,它可以工作 Marcell Fulpo,我看了这篇文章,没有任何帮助:( 你试过session_restart()
吗?应该是解决您问题的更简单方法。
【参考方案1】:
问题解决了。我所做的是清空会话并重新生成 id,然后将其销毁。我不完全理解这个问题,但它有点工作:
<?php
session_start();
if(isset($_SESSION['id_client']) && isset($_POST['ok']))
$_SESSION=array();
session_regenerate_id();
session_destroy();
echo 1;
?>
【讨论】:
以上是关于PHP session_destroy()警告会话对象销毁失败[重复]的主要内容,如果未能解决你的问题,请参考以下文章