Php AJAX post使用响应后的条件if语句,可以吗?

Php AJAX post使用响应后的条件if语句,可以吗?,php,ajax,if-statement,Php,Ajax,If Statement,我使用的一个表单只需一次输入,就可以使用AJAX发布到服务器。我计划获取输入的字符串值,并检查数据库中是否已经存在该字符串。我将在_array()中为我们提供,,如果字符串不存在,则将其插入数据库并回显1,如果重复,则回显0,结果返回1或0 在我的AJAX中,我在成功时使用这个简单的函数,如果结果返回1,我将使用jQuery显示成功消息,否则我将显示错误并退出。通过返回1或0和exit()是否重复 success: function(result) { if(resu

我使用的一个表单只需一次输入,就可以使用AJAX发布到服务器。我计划获取输入的字符串值,并检查数据库中是否已经存在该字符串。我将在_array()中为我们提供
,如果字符串不存在,则将其插入数据库并回显1,如果重复,则回显0,结果返回1或0

在我的AJAX中,我在成功时使用这个简单的函数,如果结果返回1,我将使用jQuery显示成功消息,否则我将显示错误并退出。通过返回1或0和
exit()是否重复

    success: function(result)
    {
      if(result == 1)
    { string was inserted to db }
    else
    { 
duplicate exists 
      exit();
      }

谢谢

我个人会在php中这样做,我返回一个json编码的标识数组,其中包含一些关于响应的信息。我通常包含比需要更多的信息,用于调试目的和将来可能的更改

if($results >= 1){
    $duplicate_exists = 'true';
}elseif($results < 1){
    $duplicate_exists = 'false';
};

$result = array(
    'exists' => $duplicate_exists ,
    'status' => $status,
    'time' => time()
    // etc
);

echo  json_encode($result)

您可以使用以下代码使用
AJAX
JS
发布和检索结果

$.ajax({
        url: 'https://api.github.com/gists',
        type: 'POST',
        dataType: 'json',

        data: JSON.stringify(data)
      })
      .success( function(e) {

       res = jQuery.parseJSON(e);
       if(res.exists == 'false'){
        // string was inserted to db
       }
       else if(res.exists == 'true'){ 
        // duplicate exists 
        exit();
      }


      })
      .error( function(e) {

        //there was error

      });

@如果我不使用exit(),则使用DrixsonOseña;表单将继续提交AJAX请求,即使返回0也是如此。您可以使用
event.preventDefault()
不允许您提交表单,只允许ajax运行。这就是你需要的吗?@DrixsonOseña不,我的javascript中已经有了这一点。那么你是说你的ajax中有错误吗?Jack在my.ajax()中,我有数据:serializedData。因此,在服务器上,我可以将结果编码为json。然后在success函数中,我可以解析json响应?是的。如果您在success中执行了
console.log(result)
,那么请检查您的javascript控制台,它应该是一个json字符串。如果您使用该字符串并
eval()
jQuery.parseJSON()
它,它将把它变成一个对象。非常感谢,我正在查看jQuery的文档,了解它返回的成功设置和数据表单,但不确定如何使用它们。与其在javascript中使用
}否则{
,我认为最好使用
}else if(result.exists==“true”){
。既然您要告诉用户有一个重复项,那么您应该在编码中指定它是重复项,因为当发生其他不是这两件事的事情时,它不应该返回到重复错误。之所以status为null,是因为php文件中没有定义
$status
results.exist
是一个字符串。您可以使用“apple”和“pear”来代替“true”和“false”,它的运行方式完全相同。您在php文件中放入该数组的任何内容都将成为对象
结果的一部分。您可以在其中命名任何内容。如果需要,您可以放入数千个字符长的字符串。
$.ajax({
        url: 'https://api.github.com/gists',
        type: 'POST',
        dataType: 'json',

        data: JSON.stringify(data)
      })
      .success( function(e) {

       res = jQuery.parseJSON(e);
       if(res.exists == 'false'){
        // string was inserted to db
       }
       else if(res.exists == 'true'){ 
        // duplicate exists 
        exit();
      }


      })
      .error( function(e) {

        //there was error

      });