让Json返回true或false - php

我有一个switch语句,该语句返回true或false以及一个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返回true或false,在警报中它只是从索引页面输出了很多html。

我做错了什么?

参考方案

您的输出不是truefalse,而是"correct""incorrect"

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

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

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

PHP:将数组值加在一起 - php

我相信这比标题听起来要难一些,但我可能完全错了。我有一个像这样的数组:[["londrina",15],["cascavel",34],["londrina",23],['tiradentes',34],['tiradentes',21]] 我希望能够采用通用…

PHP-MySQL结果转换为JSON - php

我试图了解如何将MySQL结果转换为JSON格式,以便以后可以在Javascript中使用此JSON来构建HTML表。但是我的代码只是产生大量的空值,我还不明白为什么。$result = mysqli_query($con, "SELECT * FROM Customers"); $test = json_encode($result);…

json_encode网址失败 - php

有人在this bug附近吗?echo json_encode(array('url'=>'/foo/bar')); {"url":"\/foo\/bar"} 我使用Zend_Json and Zend_Json_Expr以便我甚至可以在js对象中获取回调函数-但我无法获得…

json_encode的特定方式 - php

所以这是我的PHP<?php include 'connect.php'; $sql = "SELECT name from startup_schema"; $result = mysqli_query($mysqli, $sql) or die("Error in Selecting " …

json_encode utf8 - php

我把一些数据放到我的mysql数据库中,可以正常工作。但是,当我使用json_encode获取数据时,我会像这样返回ist:{"idpostdata":"49","artID":null,"timestamp":"06.11.2012 13:35","…