当前位置: 首页 > 知识库问答 >
问题:

获取Json返回true或false

益光亮
2023-03-14

我有一个返回true或false的switch语句和一个if-and-else语句,然后我使用它进行更多验证。

因为该值正在使用ajax在输入字段上发送。我希望PHP返回true或false。

我已经用JSON试过了,我用一个警告来测试我得到了什么,它只是一大堆html。

$a = isset($_POST['ccode']) ? $_POST['ccode'] : NULL;

    function isValid($Code) {
        switch ($Code){
            case "123":
            case "45545":
             return true;
        default: 
            return false;
        }
    }

if(isValid($a)) {
        $correct = "correct";
       echo json_decode($correct);
    }
    else {
        $incorrect = "incorrect";
        echo json_decode($incorrect);
    }

AJAX

 $('#ccode').blur(function() {
    var code = $(this).val();

  $.ajax({
        type:'POST',
          url: 'index.php',
          dataType: 'json',
          data:{
            ccode:code
          },
          success: function(data) {
          alert(data);
          }
  });

当你看到警报(数据)时,我将用它替换它

if (data == false) {
//do this
}

});

我的代码不会从php返回真或假,在警报中,它只是从我的索引页输出了很多html。

我做错了什么?

共有3个答案

喻昀
2023-03-14

$correct变量应该是这样的数组

$correct = ['isValid'=> true]

然后你把它编码

在成功的 jquery 回调函数中,可以对其进行调试以检查结果值

alert(data.isValid)
仉梓
2023-03-14

在 PHP 中替换

echo json_decode($incorrect);

echo json_enecode(array("success"=>$incorrect));

然后在javascript中解析这个json。

公良照
2023-03-14

您的输出不是,而是“正确”“不正确”

如果将数据与这些值进行比较,则可能会获得更好的结果:

if (data === "correct") {
    // correct
} else {
    // incorrect
}

哦,是的,您使用的是json_decode而不是json_encode

 类似资料:
  • 问题内容: 如果某些列返回FALSE,如何显示不同的值, 例如, COLUMN“ BASIC”返回FALSE,但我需要为用户显示YES或NO。情况为FALSE,请返回NO。 问题答案: 如果是varchar或bit,则处理NULL 或者如果只是一点点 编辑:

  • 我刚刚开始学习Javascript,现在只是学习一些基本的东西。但问题是我真的不明白如果这个switch语句如何返回 null null 还有人看到问题了吗? 如有任何帮助,我们将不胜感激!

  • 问题内容: 当我尝试从Java代码中删除tomcat服务器conf / Catalina / localhost中存在的文件时,file.delete()始终返回false。但是,如果我通过file.exists()函数检查文件,它将返回true。我没有任何例外。请帮助我们为什么会这样。有什么解决方案? 问题答案: 当我尝试从Java代码中删除tomcat服务器conf / Catalina /

  • 无论如何,这个公式是否可以修改为返回,例如:找到单词“哇”,并将该单词返回到单元格中,而不是true/false? 谢谢。

  • 问题内容: 它们没有正确回答(或根本没有回答)。但是,我不知道为什么总是对我返回false。有人可以告诉我为什么以及如何解决问题?提前致谢。 注意:我所说的活动是包含在中的孩子,这都不是 MAIN 或 LAUNCHER 活动。我不知道这有什么区别。 编辑: 因此应用程序不会进入后台。我希望它进入后台,就像按下硬件HOME一样 问题答案: 我不知道为什么要回去给你。也许您的清单上有些奇怪?无论如何,

  • 在WordPress主题中,当一个联系人表单完成时,一条消息会写在页面上,但不会写在我想要的位置。但是当在PHP代码中更改消息的位置时,联系人表单中的段落(写在文章中)不再显示。事实上,我认为方法返回false,因此不会调用方法。 以下是原始代码: 我希望它是这样的: 如你所见,我只更改了确认消息的位置。但是在第二种方式中,具有的条件似乎不是真的,因为我在文章中写的文本没有显示出来。 有人能帮我解