fra*_*kie 2 php ajax jquery server-side-scripting
我不认为我在我的单独的PHP和AJAX文件之间以正确的方式传递变量.
我正在通过触发$status = 'info';PHP文件中的第二个条件来调试它.
目前,status即将出现"未定义"alert(data.status);
signup_process.php
if (condition){
$status = 'success';
else {
$status = 'info';
}
Run Code Online (Sandbox Code Playgroud)
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;
};
Run Code Online (Sandbox Code Playgroud)
我知道第二个条件是被触发的,因为我把一个标题重定向只是为了测试而且它运行正常.
很高兴使用json同时将数据从php返回到ajax.
$return_data = array();
if (condition){
$return_data['status'] = 'success';
} else {
$return_data['status'] = 'info';
}
echo json_encode($return_data);
exit();
Run Code Online (Sandbox Code Playgroud)
现在,如果你将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;
};
Run Code Online (Sandbox Code Playgroud)