三天过去了,仍然有问题让这件事情起作用.在发送JSON数据时,我的js文件上的这个AJAX调用看起来很有用:
var _lname = $('#ptLastName').val();
var _fname = $('#ptFirstName').val();
var _mname = $('#ptMiddleName').val();
var _gender = $('#ptGender').val();
var _bday = $('input[name="birthdate"]').val(); // $('#ptBirthDate').val();
var _ssn = $('#ptSSN').val();
$.ajax({
type: "POST",
url: ".././CheckPerson.php",
data: "{'lastName':'" + _lname + "','firstName':'" + _fname + "','middleName':'" + _mname + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
var res = response.d;
if (res == true) {
jAlert('Person Name already exists!', 'Error');
return;
}
})
Run Code Online (Sandbox Code Playgroud)
但在我的PHP文件中:
$lastname = json_decode($_POST['lastName']);
$firstname = json_decode($_POST['firstName']);
$middlename …Run Code Online (Sandbox Code Playgroud) 我有一个AJAX脚本,在我的一个PHP文件中发布数据:
var _lname = $('#ptLastName').val();
var _fname = $('#ptFirstName').val();
var _mname = $('#ptMiddleName').val();
$.ajax({
type: "POST",
url: ".././CheckPerson.php",
data: "{'lastName':'" + _lname + "','firstName':'" + _fname + "','middleName':'" + _mname + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
var res = response.d;
if (res == true) {
jAlert('Person Name already exists!', 'Error');
return;
}
Run Code Online (Sandbox Code Playgroud)
它运行正常,我可以看到Firebug控制台中发布的JSON数据.问题出在这个PHP代码上:
$firstname = json_decode($_POST['firstName']);
$lastname = json_decode($_POST['lastName']);
$middlename = json_decode($_POST['middleName']);
$response = array();
Run Code Online (Sandbox Code Playgroud)
上面的PHP代码看来它不能识别'firstName','lastName'以及'middleName'作为发布JSON参数,并返回一个Undefined index: firstName …