php 把数组插入数据库

问题在图片上~... 问题在图片上~ 展开
 我来答
马后雷鼓下扬州5058
推荐于2016-11-03 · TA获得超过4321个赞
知道小有建树答主
回答量:693
采纳率:33%
帮助的人:807万
展开全部
lxydjx 正解,我来详细补充一下吧。未经测试、、、

//初始化
$sql = array();

// 从 a.php POST 过来的值
$_POST["xinxi"] = "20-2,19-1,18-1";

// 拆分为 array("20-2", "19-1", "18-1");
$post_data = explode(",", $_POST["xinxi"]);

// 循环数组
for($i = 0; $i < count($post_data); $i++) {
// 再次拆分每一条信息为 array("20", "2"), array("19", "1"), array("18", "1")
$details = explode("-", $post_data[$i]);

// 将每一条信息添加到 $sql 数组中
array_push($sql, "(20121015194535193356, ".$details[0].", ".$details[1].")");
}

// 用 , 连接,转换为 string
$sql = implode(",", $sql);

// 插入数据库
mysql_query("INSERT INTO table_sales (dingid, detailsid, buynumber) VALUES ($sql)");
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
嘟嘟乐悠
2012-10-16 · TA获得超过568个赞
知道小有建树答主
回答量:359
采纳率:0%
帮助的人:329万
展开全部
<?php
$post='20-2,19-1,18-1';//$post=$_POST['xinxi'];
$id='20121015194535123456';//添加自己生成dingid的逻辑
//分解POST信息
$post=explode(',',$post);
//遍历post数组,添加dingid数据
foreach($post as $k=>$v){
//将 20-2 分解
$post[$k]=explode('-',$post[$k]);
//在数组最前面加上dingid
array_unshift($post[$k],$id);
//重新组合为sql语句的values的子句
$post[$k]='('.implode(',',$post[$k]).')';
}
//组合sql语句
$post='INSERT INTO _table_(dingid,detailsid,buynumber) VALUES'.implode(',',$post);
//mysql_query函数
?>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lxydjx
2012-10-16 · TA获得超过283个赞
知道小有建树答主
回答量:472
采纳率:0%
帮助的人:407万
展开全部
用explode(',',$_POST['XINXI']) 这样得到有多少个商品

然后再循环得到的商品 再用 “-” 切割 得到 id 和数量
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式