//第一步
$con
=
//第二步
mysql_select_db('rankingme',$conn);
//第三步
$sql="insert
into
lili
(name,sex,et,hobby,photo,tel,address,content,time)
values
($name,$sex,$et,$hobby,$photo,$tel,$address,$content,$time)"
//第四步
mysql_query($sql);
//第五步
mysql_close($con);
呵呵,你弄错了,将mysqli_query($conn,$sql);放到循环里面去执行,这样$sql循环一次,就插入一次,你要是放到外面的话,就成了$sql全部遍历完之后,再执行连接数据库,这样肯定只能执行循环的最后的那一次的插入,明白了吧
订单提交后:
$_POST['list'] 的值会是:
array(a,b,c,d,e,a,b,a,b,c,d);
根本就没有使用价值,即无法分清楚是这些选项是属于哪个名称的.所以,要么用js先在提交之前加工一个"list"的值,或者改交下list的名称,如下:
input type="checkbox" name="list[]" value="a" /
改为:
input type="checkbox" name="list_sina[]" value="a" /
其他的按些修改.
在提交之后的处理代码如下:
$title?=?isset($_POST['title'])?$_POST['title']?:?array();
$insert_data?=?array();
foreach($title?as?$row){
$name?=?trim($row);
$list?=?isset($_POST['list_'.$name])?implode(',',$_POST['list_'.$name])?:?'';
$insert_data[]?=?"('$name','$list')";
}
if(!empty($insert_data))?$mysql-query('INSERT?INTO?mysql_table(name,list)VALUES?'.implode(',',$insert_data));
这样的数据库查询语句为:
INSERT INTO mysql_table(name,list)VALUES ('sina','a,b,c,d,e'),('qq','a,b'),('ifeng','a,b,c,d')
没用框架就直接拼接sql语句啊
主要就是拼接values后面的内容,一个括号一条数据,拼接完执行数据库插入操作就行了;
如果数据量很大,注意每次拼接的sql不要太长了,数据库执行的sql也是有长度限制的
假设你的数据设计的比较简单 下面是我的思路,如果是比较复杂设计也可以通过下面的思路进行扩展
首先要有每条记录的id,如果是表单提交每一行要有一个隐藏域来保存id
sc代表参数且是一个二维数组,键名是id值,键值是一个一维关联数组
post参数打印出来是下面这样,然后循环这个post数组? 每循环一次根据id来进行更新品牌单价单位
如果是ajax提交 只要把传递的json数据自己拼装一下 后端打印出来和上面的post数据格式一样就可以了
以上就是土嘎嘎小编为大家整理的php提交数组到数据库中相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!