我想在使用jQuery关闭弹出窗口时取消设置会话变量。 jQuery代码如下:
$("#close").click(function (){
$("#popup_container2").css("display", "none");
if($("#popup_container2").css("display")=="none")
{
var s=1;
$.post("check_data.php", "s=" + s, function(respose){
location.reload();
});
}
});
只有在设置了$_SESSION['question_temp_id']
的情况下加载页面时才会打开此弹出框。否则它不会。为此,我在body标签中添加了此代码。
if(isset($_SESSION['question_temp_id'])) {
echo 'onLoad="div_show();"';
}
在检查数据页面上,php代码如下。
if(isset($_POST['s']) && $_POST['s']==1) {
unset($_SESSION['question_temp_id']);
}
问题是即使我取消设置会话变量,弹出窗口仍会打开。 我无法弄清楚这里的问题。请建议。
提前致谢。
答案 0 :(得分:1)
if(isset($_POST['s']) && $_POST['s']==1) { unset($_SESSION['question_temp_id']); }
question_temp_id
的实际值而不是set / unset。您可以使用Y / N值。尽管set / unset应该有效,但比较值通常可以更好地控制以后的代码更改。答案 1 :(得分:1)
实际上,问题是我没有在开始时使用session_start
。由于代码很多,所以很难找到问题所在。然而,后来我发现并纠正了它,现在,代码工作正常。