我有一个谷歌浏览器扩展程序通过XHR与PHP脚本交谈。我在PHP脚本中有一个标志,用于检查是否在弹出窗口中单击了一个按钮,如果发送了正确的POST数据。如果单击此按钮,则需要销毁当前会话,并且通过单击添加按钮输入新数据时,不应将数据附加到现有会话,而是启动新会话。它目前只是将数据重新附加到数组。就好像忽略了clear session命令一样,但是正确地向控制台调用了IF语句。如何获取清除会话语句以清除会话?
PHP脚本:
<?php $json = $_POST['data'];
if($json['button'] == "clear"){
session_unset();
session_destroy();
echo 'session destroyed!'; //being called to console
exit();
}
if (!isset ($_COOKIE[ini_get($_SESSION['data'])])) {
session_start();
}
if(!isset($_SESSION['data'])){
$_SESSION['data'] = $json;
} elseif (isset($_SESSION['data'])){
array_push($_SESSION['data'], $json);
}
print_r($_SESSION['data']);
?>
答案 0 :(得分:2)
您必须先致电session_start()
:
if($json['button'] == "clear")
{
session_start(); // <-- first
session_unset();
session_destroy();
echo 'session destroyed!'; //being called to console
exit();
}