php post保存到数据库,新手请教PHP怎么批量获取POST值并存入数据库!

$data=array();

$data['a']=in($_POST['a']);

$data['b']=in($_POST['b']);

$data['c']=in($_POST['c]);

$data['d']=in($_POST['d']);

$data['aa']=in($_POST['aa']);

$data['a1']=in($_POST['a1']);

..................这里省略

model('xitong')->update("id=1",$data);

上面是一段正常更新数据库的PHP代码

但是,目前所遇到的问题是,为了需要,这个表里面的字段多达50多个。而像

$data['a']=in($_POST['a']);这样格式一行一行输入的话,感觉很不科学。

能不能做到按照字段名称批量获取post值并一同更新到数据库?

回复讨论(解决方案)

foreach($_POST as $key => $val){ //最好加上逻辑 过滤不是字段的 key $data[$key] = in($val);}

foreach($_POST as $key => $val){ //最好加上逻辑 过滤不是字段的 key $data[$key] = in($val);}

本人新手,能详细点吗,谢谢!

$fields = array('a','b','c','d');//你的字段foreach($fields as $val){ if(!empty($_POST[$val])){ $data[$val] = in($_POST[$val]); }}

$fields = array('a','b','c','d');//你的字段foreach($fields as $val){ if(!empty($_POST[$val])){ $data[$val] = in($_POST[$val]); }}

这种看明白了,

但是在2楼您回复的另外一种方式我试过了也可以用。但不知道两者有什么区别,用哪一张比较好。

第一种的话 如果 psot传了一个 数据库 没有的key 就会报错呀

所有我说要做字段过滤

如果不是 每次都是 插入 所有字段的话可以用这种方法

第二种的话 检查了每个字段都是不是有值

如果每次都是插入所有字段可以使用这种发放

各有各的好处 看使用的人 怎么用

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值