我有以下问题:我在PHP会话变量中存储了几个变量。现在,如果我单击一个链接,我想将所有变量,变量2和变量3的值设置为空,然后将用户引导到链接页面。如何确保将变量设置为在加载testpage.php之前将其设置为空?有100%安全的方法吗?
<?
$_SESSION["variable1"] = "value1";
$_SESSION["variable2"] = "value2";
$_SESSION["variable3"] = "value3";
?>
<a href="testpage.php" id="killswitch">Go to but kill sessions before loading page</a>
<script>
$(function(){
$(document.body).on('click touchstart', '#killswitch', function(){
<?
$_SESSION["variable1"] = "";
$_SESSION["variable2"] = "";
$_SESSION["variable3"] = "";
?>
});
});
</script>
可能是向服务器提出AJAX请求的最简单方法,该请求修改了会话变量。
因此,您需要在服务器端上进行一个简单的脚本,并在您的事件中进行jQuery中的$.ajax
调用。首先,您应该防止链接被调用,因为首先我们启动了Ajax请求。在此请求的回调中,我们调用链接的HREF。
看起来像这样:
$(document.body).on('click touchstart', '#killswitch', function(event){
event.preventDefault();
$.ajax({
url: "killswitch.php"
}).done(function() {
location.href = $(this).attr('href');
});
});
希望这会有所帮助。