我有以下php代码:
if (($name == "") || ($email == "") || ($telephone == "") || ($username == "") || ($password == "")) {
$ret = Array();
$ret["msg"] = "some input is missing";
echo json_encode($ret);
} elseif (!preg_match($pattern_email, $email)) {
$ret = Array();
$ret["msg"] = "email format is incorrect";
echo json_encode($ret);
} elseif (!preg_match($pattern_phone, $telephone)){
$ret = Array();
$ret["msg"] = "telephone should be all digits";
echo json_encode($ret);
}
以及以下javascript:
$(document).ready(function(){
$("#save").click(function(){
var name = $('#name').val();
var email = $('#email').val();
var telephone = $('#telephone').val();
var username = $('#username').val();
var password = $('#password').val();
$.ajax({
type:'POST',
url: 'contactData.php',
dataType: "json",
data:{"name":name,"telephone":telephone,"email":email, "username":username, "password":password},
success: function(data) {
//alert(data);
var result = JSON.parse(data);
$("#validate").html(data.msg);
}
});
});
});
该程序的目的是在其中一个条件为真时使用json输出error message
。但是我没有检索到任何数据,程序在声明中显示错误
var result = JSON.parse(data);
任何人都可以帮助PLZ ???
答案 0 :(得分:0)
首先在PHP而不是
$errorMsg = '{"msg":"some input is missing"}';
使用
$ret = Array();
$ret["msg"] = "some input is missing";
echo json_encode($ret);
在你的javascript中
添加你的ajax请求
dataType: "json",
您的Parse现在可以使用
答案 1 :(得分:0)
您需要创建一个数组。在代码结束后进行所有验证。
$data['respone'] = $errormsg;
echo json_encode($data);
exit();
在javascript中你需要解析json对象。并检查是否oject.element ==''然后将其他文件写错了。