十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
订单提交后:
网站建设公司,为您提供网站建设,网站制作,网页设计及定制网站建设服务,专注于企业网站设计,高端网页制作,对成都VR全景等多个行业拥有丰富的网站建设经验的网站建设公司。专业网站设计,网站优化推广哪家好,专业成都网站营销优化,H5建站,响应式网站。
$_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')
$num=count($ICNo);
for($i=0;$i$num;$i++){
mysql_query("insert into dota(ICNo,A_Name,A_ContNo) values('$ICNo[$i]','$A_Name[$i]','A_ContNo')",$conn[$i]);
}
把数组转成json或其他字符串在写入数据库,不转换字符串无法写入或自由Array,我是没试过,反正我知道是无法写入,我都是转成json后在写入。
?php
$array=array(
"data1"="data1",
"data2"=array(
"data22"="data22",
"data222"="data222"
),
"data3"="data3"
);
$encode=json_encode($array); //数据库写入转换
$addslashes=addslashes(json_encode($array)); //如果只用英文字符的话可以直接用上面,用中文或有带斜杠/,PHP写入数据库的时候会去掉斜杠/,所以addslashes函数在转换下写入
$decode=json_decode($array,true); //数据库读取转换
?
PHP的话,使用foreach循环执行sql代码即可(可能运算量较大)
直接存数组中的字符串也可以。
如:
$a="0,1,2,3";
//$a=join(",",array(0,1,2,3)); 这样也可以
mysql_query("INSERT INTO admin (monday) VALUES($a)");
这样字段monday的就是0,1,2,3
(后一种具体答案,摘自adebug的回答,有改动)
没用框架就直接拼接sql语句啊
$sql = 'insert into tablename(field1, field2, field3) values(val1, val2, val3), (val1, val2,val3)';
主要就是拼接values后面的内容,一个括号一条数据,拼接完执行数据库插入操作就行了;
如果数据量很大,注意每次拼接的sql不要太长了,数据库执行的sql也是有长度限制的