Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.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
如何获得ajax“;“成功”;及;“错误”;使用php crud api进行响应_Php_Json_Ajax_Api - Fatal编程技术网

如何获得ajax“;“成功”;及;“错误”;使用php crud api进行响应

如何获得ajax“;“成功”;及;“错误”;使用php crud api进行响应,php,json,ajax,api,Php,Json,Ajax,Api,我在验证API的响应时遇到问题。 我正在使用并将登录表单中的值传递到url过滤器[],服务器响应200 OK,并从表中返回json数据。但是,我不需要json数据,只需要一个“成功”或“错误”响应。任何帮助都将是惊人的。提前感谢您的反馈 $(document).ready(function() { $("#login-button").click(function() { log_email = $("#login_email").val(); log_p

我在验证API的响应时遇到问题。 我正在使用并将登录表单中的值传递到url过滤器[],服务器响应200 OK,并从表中返回json数据。但是,我不需要json数据,只需要一个“成功”或“错误”响应。任何帮助都将是惊人的。提前感谢您的反馈

$(document).ready(function() {
    $("#login-button").click(function() {
        log_email = $("#login_email").val();
        log_password = $("#login_password").val();
        $.ajax({
            type: "GET",
            url: "http://www.website.com/api.php/users?",
            crossDomain: true,
            data: "filter[]=email,eq,email=" + log_email + "&filter[]=password,eq,password=" + log_password,
            dataType: 'json',
            success: function(data) {
                if (data == "null") {
                    console.log("Email and Password DIDN'T match");
                    $( "#invalid-login" ).popup( "open" );
                } 
                else if (data == "true") {
                    console.log("it's a !!MATCH!!");
                    window.location = "content.html";
                }
            }
        });
        return false;
    });
});

我已经阅读了的文档,其中写道,它将仅返回json格式的输出“压缩json输出:第一行包含字段名”,因此您需要相应地更改代码,或者可以使用其他选项。

幸运的是,API开发人员返回给我,他提供了以下解决方案:

在ajax调用中,添加以下行以限制输出:

+"&columns=email"
重播:

if (data == "null") {
与:
如果您只需要一个成功或错误的响应,那么您将在PHP中响应这些响应,而无需其他输出。您看过api文档和文件了吗?记录在案还可以,但并不令人惊讶。我看了看php,顿时不知所措。也许我对这个太陌生了:(
if (data.users.records.length==0) {
else if (data == "true") {
else {
$(document).ready(function() {
    $("#login-button").click(function() {
        log_email = $("#login_email").val();
        log_password = $("#login_password").val();
        $.ajax({
            type: "GET",
            url: "http://www.website.com/api.php/users?",
            data: "filter[]=email,eq,"+log_email+"&filter[]=password,eq,"+log_password+"&columns=email",
            crossDomain: true,
            dataType: 'json',
            cache: false,
            success: function(data) {
                if (data.itouchyou.records.length == 0) { 
                    //FAIL
                    $( "#invalid-login" ).popup( "open" );
                    console.log("Email and Password DIDN'T match");
                } 
                else { 
                    // SUCCESS
                    window.location = "content.html";
                    console.log("it's a !!MATCH!!");
                }
            }
        });
        return false;
    });
});