微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何获得AJAX的PHP变量?

我不认为我在我的单独的PHP和AJAX文件之间以正确的方式传递变量.

我正在通过触发第二个条件$status =’info’来调试它;在我的PHP文件中.

目前,状态即为“未定义”警报(data.status);

signup_process.PHP

if (condition){

   $status = 'success';

else {

    $status = 'info';

    }

AJAX

function send() {
var data = $('#signup_form').serialize();
    $.ajax({
        type: "POST",
        url: "signup_process.PHP",
        data: data,
        success: function (data) {
        alert(data.status);
            if (data.status == 'success') {
                // everything went alright, submit
                $('#signup_form').submit();
            } else if (data.status == 'info')
            {
                console.log(data.status);
                $("label#email_error").show(); 
                return false; 
            }
        }
    });
    return false;
};

我知道第二个条件是被触发的,因为我把一个标题重定向只是为了测试而且它运行正常.

解决方法:

很高兴使用json同时将数据从PHP返回到ajax.

$return_data = array();
if (condition){
   $return_data['status'] = 'success';
} else {
    $return_data['status'] = 'info';
}

echo json_encode($return_data);
exit();

现在,如果你将json数据返回给ajax,那么你需要将返回数据类型指定为ajax调用,如下所示

function send() {
var data = $('#signup_form').serialize();
    $.ajax({
        type: "POST",
        url: "signup_process.PHP",
        data: data,
        dataType: 'json', 
        success: function (data) {
        alert(data.status);
            if (data.status == 'success') {
                // everything went alright, submit
                $('#signup_form').submit();
            } else if (data.status == 'info')
            {
                console.log(data.status);
                $("label#email_error").show(); 
                return false; 
            }
        }
    });
    return false;
};

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐