我希望这些内容可以解释这个问题:
//in javascript
function foo(sessionName){
var u = "test.php?q="+sessionName+"&r="+parseInt(Math.random()*9999999);
xmlHttpObj.open("get", u, true);
xmlHttpObj.send();
}
//in php
$q = $_GET['q'];
unset($_SESSION[$q]);
就像你看到的那样,我不希望返回任何值,我只是想取消设置特定的会话。
答案 0 :(得分:2)
您不必返回值,如果您访问并运行脚本,它将执行它的工作。问题是,如果成功,您将无法知道,因此最好一般返回成功/失败值。但是,由于unset()
实际上没有返回值,因此在这种情况下不需要。
答案 1 :(得分:1)
是的,这很有效。我想你的问题是变量名中的拼写错误?
var u = "test.php?q="+sessionName+"&r="+parseInt(Math.random()*9999999);
^
$n = $_GET['n'];
^
答案 2 :(得分:0)
最好还是返回一个表明它是否有效的值。即使这段代码应该可以正常工作。
将这个添加到脚本的末尾会给你一个指示它是否有效。
if (isset($_SESSION[$n])) {
echo 'success';
}
else {
echo 'fail';
}