jQuery 序列化数据和 PHP $_POST 不匹配
jQuery serialized data and PHP $_POST don't match
我有一个带有form.
的页面此表单具有不同的"工作表",当用户浏览这些工作表时,使用$.ajax
从网站调用信息,并且表单获得动态添加的输入。
最后,我正在尝试将此表单数据发布到 PHP 文件中。
我不会转储我的整个代码,因为它有很多规则。但这是我用来发布的部分:
function postForm() {
...
var data = $('form.feedForm').serialize();
//console.log( data );
$.post('.../get.php?feed_add_save_feeding', data )
.fail( function() {
console.log('fail');
...
})
.success( function(data) {
console.log('success');
console.log(data);
...
})
}
在我的PHP中,我添加了这个,看看会发生什么:
print_r( $_POST );
在我的控制台中查看,我看到这些参数已发布:
dateType now
date_d 30
date_m 1
date_y 2016
time_h 19
time_m 27
time_s 42
herd_num_animals 150
herd 85
menu 26
feedtype_total_value 3639
tWeight 3639
weightCumu 3637
supps_name[29] Test voer 1
supps_price[29] 128
supps_dry_weight[29] 94
supps_weight[29] 1837
supps_name[34] Test voer 6
supps_price[34] 18
supps_dry_weight[34] 70
supps_weight[34] 1800
supps_name[30] Test voer 2
supps_price[30] 160
supps_dry_weight[30] 50
supps_weight[30] 1
user_id 1
PHP 中的输出是
Array
(
[dateType] => now
[date_d] => 30
[date_m] => 1
[date_y] => 2016
[time_h] => 19
[time_m] => 27
[time_s] => 42
[herd_num_animals] => 150
[herd] => 85
[menu] => 26
[feedtype_total_value] => 3639
[tWeight] => 3639
[weightCumu] => 3637
[supps_name] => Test voer 6
[supps_price] => 18
[supps_dry_weight] => 70
[supps_weight] => 1837
)
为什么不是所有提交的输入都通过 PHP ?
(注意:由于大小的原因,我故意省略了我的代码。如果我应该添加一些或全部,请发表评论)
编辑
以下是完整的JS代码和渲染的HTML(从Firebug复制):
JSFiddle(只是代码,不是工作演示)
我看到的是你正在发送几个数组,并且正确的数组键显示在输出中
在帖子正文中发送的变量,如supps_name[29]
将是 PHP 中的数组
is_array($_POST['supps_name'])// true
您的 html 输入应如下所示
<input name="supps_name[]">
或 使用定义的键
<input name="supps_name[1]">
相关文章:
- 高库存时期时间与时区不匹配
- react路由器使用简单的javascript路由器配置来处理不匹配的路径
- Javascript:图像与单选按钮的值不匹配
- 文本区域(jQuery)的结果不匹配
- 如果状态不匹配,则缩小为丑陋
- Jquery Ajax POST不工作.适用于GET
- 为什么我网页的facebook点赞数与该网页的facebook页面不匹配
- 使用jscodeshift添加表达式时,错误{..}与类型字符串不匹配
- GET在POST不工作XMLHttpRequest的情况下正常工作
- JavaScript正则表达式不匹配
- row.entity.xxxx属性doensn'排序后不匹配
- 参数使用AJAX的PHP POST不起作用
- Url.Content中的Url不匹配
- 控件坐标与组坐标不匹配
- 使用正则表达式查找字符串中的不匹配字符
- CSS Media Query 和 Javascript/jQuery 不匹配
- 始终在 jQuery 自动完成中显示特定选项,即使它与输入不匹配
- 如果项目不匹配,则显示变量
- Ajax Post到Laravel - CSRF令牌不匹配
- 当我试图发送'post&;时,我得到403 CSRF不匹配请求到SailsJS服务器