如何在不返回任何值的情况下处理php代码在ajax中

问题描述

|| 我希望这些行能解释这个问题:
//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]);

如您所见,我不想返回任何值,我只想取消设置特定的会话。     

解决方法

您无需返回任何值,如果您访问并运行脚本,它将完成它的工作。问题是您将无法知道它是否成功,因此通常最好返回成功/失败值。但是,由于
unset()
实际上并不返回任何值,因此在这种情况下没有必要。     ,是的,这可行。我想您的问题是变量名中有错字吗?
var u = \"test.php?q=\"+sessionName+\"&r=\"+parseInt(Math.random()*9999999);
                  ^
$n = $_GET[\'n\'];
            ^
    ,最好还是返回一个指示其是否起作用的值。即使这段代码可以正常工作。 将其添加到脚本的末尾将为您指示是否有效。
if (isset($_SESSION[$n])) {
    echo \'success\';
}
else {
    echo \'fail\';
}