Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在AJAX中检索响应文本_Php_Jquery_Ajax - Fatal编程技术网

Php 在AJAX中检索响应文本

Php 在AJAX中检索响应文本,php,jquery,ajax,Php,Jquery,Ajax,我已经向AJAX发送了一个数组,以便在执行查询时返回状态 if(mysqli_query($dbconfig,"INSERT INTO todo(description) values('$desc')")){ $response['success']="true"; } header('Content-type: application/json'); echo json_encode($response); 在客户端脚本中,我尝试使用以下代码根据状态显示消息 if(resp

我已经向AJAX发送了一个数组,以便在执行查询时返回状态

if(mysqli_query($dbconfig,"INSERT INTO todo(description) values('$desc')")){
        $response['success']="true";
}
header('Content-type: application/json');
echo json_encode($response);
在客户端脚本中,我尝试使用以下代码根据状态显示消息

if(response.status=="success"){
      alertify.success("New item has been added successfully");
}else if(response.status=="error"){
      alertify.error("Error while adding the item");
}
即使查询运行正确,也不能同时满足这两种情况。在我的控制台日志中,状态显示成功


根据您提供的代码,您可以做两件事

if(response.status === 200){
    //handle success
} else {
    //handle error
}
或者,如果您愿意,您可以尝试:

var status = JSON.parse(response.responseText);
if(status.status === "success"){
    //handle success
}else{
    //handle error
}

您正在打印的对象是在成功处理程序中得到的吗???@r1verside抱歉,我没有得到成功处理程序是什么。我只是做了console.logresponse;其中response是函数的参数。由于AJAX请求是异步的,所以成功处理程序是传递给请求代码的函数,当服务器响应您的请求时将执行该函数。我想这就是您编写console.logresponse的地方。如果是这样的话,我在回答中提供的两种解决方案中的任何一种都应该符合trickI尝试过的两种方法。如果您在结果操作处理程序中放置了console.logresponse,并且结果是您在问题中粘贴的内容,则它将在else条件下运行,即使状态为successIt也没有意义。它必须起作用。您是否尝试在第二个选项中使用@SuresPokharel出现错误,我在responseText中比较了对象,而不是它的status属性