本文目录一览:
- 1、php中二维数组怎么写入到数据库
- 2、php数组插入数据库这个功能该怎么实现
- 3、php 数组存入数据库
- 4、php 多个 数组 怎样存入数据库
- 5、php把数组写入mysql的方法
- 6、PHP中如何把一个数组中的数据取出来并插入到数据库中
php中二维数组怎么写入到数据库
json_encode后就是字符串了。
所以不需要什么特别处理,直接入库就可以。
只不过出库后需要json_decode。
你的问题是,出库后没有对json_encode的字段进行json_decode处理。
例如
$result = array('a'='jsonencode后的字符串');
print_r(json_decode($result['a']));
php数组插入数据库这个功能该怎么实现
把数组转成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 数组存入数据库
直接存数组里的字符串就行了。
如$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,
读取的时候要重新组成数组的话就分割重组。
php 多个 数组 怎样存入数据库
订单提交后:
$_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')
php把数组写入mysql的方法
您好,您可以参考如下代码:
?php
/* 获取HTML表单提交的数据 */
$id = _POST["id"];
$catid = _POST["catid"];
$ly = array("data***");
/* 连接数据库,如果出错显示消息结束程序,否则继续执行数据库命令 */
$con = mysql_connect("127.0.0.1","user","password");
if($con == false)
{
echo "错误:系统数据库连接失败!错误信息:".mysql_error($con);
exit();
}else{
/* 选择需要操作数据库 */
mysql_select_db("mydb",$con);
/* 根据ly数组的长度决定执行多少次SQL语句 */
for($i=0;$icount($ly);$i++)
{
/* 设置SQL查询语句 */
$sql = "INSERT INTO `biaoge` VALUES('{$id}','{$catid}',".$ly[$i].")";
/* 如果SQL语句执行失败,返回错误代码; */
if(mysql_query($sql,$con) == false)
{
echo "数据库查询出错!错误代码:".mysql_errno($con);
mysql_close($con);
exit();
}
}
mysql_close($con);
echo "记录添加成功!";
}
?
至于遍历数组,有很多种方式,如楼上用的foreach语句也是可以的。这里用for的原因是为了方便提问者理解。如果代码仍有不足或不明白的地方,请您继续追问,直到给您一个满意的答复为止~
PHP中如何把一个数组中的数据取出来并插入到数据库中
没用框架就直接拼接sql语句啊
$sql = 'insert into tablename(field1, field2, field3) values(val1, val2, val3), (val1, val2,val3)';
主要就是拼接values后面的内容,一个括号一条数据,拼接完执行数据库插入操作就行了;
如果数据量很大,注意每次拼接的sql不要太长了,数据库执行的sql也是有长度限制的