直接存数组里的字符串就行了.
mysql_query("INSERT INTO admin (monday) VALUES($a)");
读取的时候要重新组成数组的话就分割重组.
订单提交后:
$_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')
这保存的是不同行的内容,不能直接保存.
要做成行的形式保存.
$data=array(); //创建临时变量用以存储数据
$length=count($你的array名['cwidth']); //数你有多少行数据
for($i=0; $i=$length; $i++){ //循环
$data[$i]['cwidth']=$你的array名['cwidth'];
$data[$i]['cheight']=$你的array名['cheight'];
出来的数据就像是这样:
然后再用$db-add($data);插入数据
首先你要学会查错,最简单的方式就是打印出来看.你可以在第一个变量$arr_ip下一行,把这个变量打印出来看是不是数组,如果是数组,直接存入数据库时就是array,你可以把数组json_encode一下,这样存入进去的就是序列化后的字符串了,但你拿出来时也要json_decode一下,把字符串还原成数组.
PHP的话,使用foreach循环执行sql代码即可(可能运算量较大)
直接存数组中的字符串也可以.
如:
mysql_query("INSERT?INTO?admin?(monday)?VALUES($a)");
(后一种具体答案,摘自adebug的回答,有改动)
将数组序列化存储,例如
$stooges
=
array('Moe','Larry','Curly');
$new
serialize($stooges);
print_r($new);echo
"br
/";
print_r(unserialize($new));
Array
(
[0]
Moe
[1]
Larry
Curly
)
把$new写进数据库就行啦
以上就是土嘎嘎小编为大家整理的php数组存数据库中相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!