php把数组写入mysql的方法
在提交页面有三个值,id当前页面id,catid当前页面所在栏目,ly这个值是一个有多个。id15catid2ly12,15,20,30,35正常情况写入表后是idcat...
在提交页面有三个值,id当前页面id ,catid当前页面所在栏目,ly这个值是一个有多个。
id 15
catid 2
ly 12,15,20,30,35
正常情况写入表后是
id catid ly
15 2 12
15 2 15
15 2 20
写入表时如果ly是一个值可以写入,如果ly是多个值,请问怎么写入mysql呢? 展开
id 15
catid 2
ly 12,15,20,30,35
正常情况写入表后是
id catid ly
15 2 12
15 2 15
15 2 20
写入表时如果ly是一个值可以写入,如果ly是多个值,请问怎么写入mysql呢? 展开
4个回答
展开全部
您好,您可以参考如下代码:
<?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;$i<count($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的原因是为了方便提问者理解。如果代码仍有不足或不明白的地方,请您继续追问,直到给您一个满意的答复为止~
更多追问追答
追问
还是只能写进去一条是为什么呢?
追答
您好,请问您的$ly变量是否指向一个数组,并且有多个值?
展开全部
追问
循环这一块不太懂,能不能给讲讲呢,谢谢大神
追答
代码例子都给你了,你自己看着理解一下呗
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
12,15,20,30,35 就这么写啊,用逗号连接成字符串写进去。
追问
你没看清题目
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2019-02-20
展开全部
将数组转为字符串,可以用implode(',',$array);
追问
就是往表里写的时候不知道怎么写进去
追答
转换为字符之后,可以直接用sql语句插入,insert into tablename (field)values ('$string')
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询