Rumah > pembangunan bahagian belakang > tutorial php > 新手请教PHP怎么批量获取POST值并存入数据库!

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-06-23 14:00:39
asal
1523 orang telah melayarinya

$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);}
Salin selepas log masuk
Salin selepas log masuk

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

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

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

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

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

第一种的话 如果 psot传了一个 数据库 没有的key 就会报错呀
所有我说要做字段过滤
如果不是 每次都是 插入 所有字段的话可以用这种方法

第二种的话 检查了每个字段都是不是有值
如果每次都是插入所有字段可以使用这种发放

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

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan