php把数组写入mysql的方法

2025-03-22 09:31:03
推荐回答(4个)
回答1:

您好,您可以参考如下代码:



/* 获取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 {
/* 设置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的原因是为了方便提问者理解。如果代码仍有不足或不明白的地方,请您继续追问,直到给您一个满意的答复为止~

回答2:

这个不难,把字符串变成数组,然后再循环一下这个数组,拼接成sql语句执行就行了,可以这么写

$id = 15;
$catid = 2;
$ly = '12,15,20,30,35';
$ly = explode(',', $ly);
$sql = 'insert into table (id,catid,ly) values (';
foreach ($ly as $value) {
$sql .= $value . ',';
}
$sql = rtrim($sql, ',') . ')';

希望对你有帮助

回答3:

12,15,20,30,35 就这么写啊,用逗号连接成字符串写进去。

回答4:

将数组转为字符串,可以用implode(',',$array);