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

如何在不返回任何值的情况下处理php代码(在ajax中),php,javascript,ajax,session,Php,Javascript,Ajax,Session,我希望以下几句话能够解释这个问题: //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($_SESSIO

我希望以下几句话能够解释这个问题:


//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]);


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

是的,这是有效的。我想你的问题是变量名有误吧

var u = "test.php?q="+sessionName+"&r="+parseInt(Math.random()*9999999);
                  ^
$n = $_GET['n'];
            ^

是的,这个有效。我想你的问题是变量名有误吧

var u = "test.php?q="+sessionName+"&r="+parseInt(Math.random()*9999999);
                  ^
$n = $_GET['n'];
            ^

您永远不必返回值,如果您访问并运行脚本,它将完成它的工作。问题是,您无法知道它是否成功,因此通常最好返回成功/失败值。但是,由于
unset()
实际上没有返回值,因此在这种情况下没有必要返回值。

如果访问并运行脚本,它将完成它的工作。问题是,您无法知道它是否成功,因此通常最好返回成功/失败值。但是,由于
unset()
实际上没有返回值,因此在这种情况下没有必要返回值。

可能最好还是返回一个值,指示它是否工作。尽管这段代码应该可以正常工作

将此添加到脚本的末尾将为您提供一个指示它是否有效

if (isset($_SESSION[$n])) {
    echo 'success';
}
else {
    echo 'fail';
}

最好还是返回一个值,指示它是否工作。尽管这段代码应该可以正常工作

将此添加到脚本的末尾将为您提供一个指示它是否有效

if (isset($_SESSION[$n])) {
    echo 'success';
}
else {
    echo 'fail';
}

那有什么问题?只是不要处理返回这没有任何意义…我甚至不知道如何建议改进。你不能,如果你不返回任何值,ajax将删除原始值,就像返回
echo”“抱歉,“ajax将删除原始值”没有意义。你正在经历的具体问题是什么?那么问题是什么?只是不要处理返回这没有任何意义…我甚至不知道如何建议改进。你不能,如果你不返回任何值,ajax将删除原始值,就像返回
echo”“抱歉,“ajax将删除原始值”没有意义。你遇到的具体问题是什么?在你的示例中,这是假设输入错误而不是实际错误:)在你的示例中,这是假设输入错误而不是实际错误:)如果有输入错误,请忽略,如何不返回任何内容?@Bagong just。。。不要退回任何东西。看起来你已经在这么做了。如果有错别管了,怎么不返回?@Bagong just。。。不要退回任何东西。看起来你已经这么做了。