0
我正在使用XAMPP和PHPStorm v9,在本地运行一个执行AJAX回调的简单应用程序。
我的AJAX请求的服务器处理程序显示一个空的$ _POST数组,我不知道为什么。在我使用所有这些代码并在不同的服务器上运行之前,为了消除平台问题,有没有人知道为什么$ _POST数组是空的?有什么建议么?谢谢
的JS
if (valid) {
var queryStr = 'fName=' + firstName.val() + '&lName=' + lastName.val() + '&email=' + email.val() + '&phone=' + phone.val();
var f = firstName.val();
var l = lastName.val();
var e = email.val();
var p = phone.val();
$.ajax({
type: "POST",
url: '/ACS567-Projects/addContact.php',
data: {
fName: f,
lName: l,
email: e,
phone: p
},
dataType: 'html',
success: OnAddSuccess,
error: OnAddFailure,
timeout: 60000
});
}
的PHP处理程序
<?php
if(isset($_POST['fName'])) {
$firstName = $_POST['fName'];
$lastName = $_POST['lName'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$addressBook->addContact($firstName,$lastName,$email,$phone);
echo "<b>success</b>";
exit();
}
echo "<b>failure</b>";
exit();
尝试在'$ _POST'数组上设置'processData'为'false'和/或做一个'var_dump'来查看你正在获取的内容。您的数据可能在发送前转换为查询字符串。 – Marvin
你怎么知道POST是空的?打开浏览器网络工具并检查网络XHR您要发送的内容 – daremachine
我在处理程序中记录了$ _POST检查,并且POST为空:foreach($ _POST as $ key => $ value){ $ str。= $键。“=>”。$ val; } – Slinky