【发布时间】:2015-03-27 03:15:05
【问题描述】:
我正在使用以前网站中使用的自己的 php 代码库构建网站,但 2 个月后,我使用了相同的库,并且正在发生一些事情,接收 PHP 文件中的数据以使用 jQuery 处理信息ajax,我真的不明白错误:
当我发送数据时,在 Google Chrome 开发者工具的表单数据选项中,仅显示带有数据的字段文本,但是当我使用 var_dump() 打印此 POST 数据时,会打印所有这些文本:
关于 Javascript 代码,就是这样一个简单的 ajax 代码:
var doFunction = function($form)
{
var form_data = $form.serialize();
var data = {
form: form_data,
tag: 'save'
};
$.ajax({
url: 'routes.php',
type: 'post',
dataType: 'json',
data: data
})
.done(function(data) {
})
.fail(function(jqXHR) {
})
.always(function() {
});
return false;
}
而 PHP 代码只是一个 var_dump($_POST);只是为了检查数据。关于错误的简单解释就像我正在发送这些数据:
Name: 'My Name',
Tag: 'save'
PHP 代码正在显示
My name: 'Name',
save: 'Tag'
或者类似的东西。
我希望你能帮助我。
【问题讨论】:
-
您可以尝试将数据更改为仅序列化的形式吗?
var data = $form.serialize();? -
是的,我试过了,甚至用 serializeArray();但结果相同。
-
您的代码看起来很好,并且 php 端正在按预期输出变量。 PHP 响应的第一行证实了这一点 - 变量作为数组输出。但是,您说服务器端代码仅为
var_dump($_POST);。然而,这并不能解释所有额外的 php 错误——只有在有更多代码的情况下才会存在。检查您的服务器端代码是否正确。 -
您应该向我们展示表单和相应的 php 文件,我可以看到表单数据没有必填字段。