2024-04-30 04:45:56
您好,您可以参考如下代码:
<?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变量是否指向一个数组,并且有多个值?
是的,有多个值
您好,请问您那边的代码是怎么写的?为什么只能写进一条?
2024-04-30 08:38:29
这个不难,把字符串变成数组,然后再循环一下这个数组,拼接成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, ',') . ')';
希望对你有帮助
循环这一块不太懂,能不能给讲讲呢,谢谢大神
代码例子都给你了,你自己看着理解一下呗
2024-04-30 04:06:57
你没看清题目
2024-04-30 07:39:33
就是往表里写的时候不知道怎么写进去
转换为字符之后,可以直接用sql语句插入,insert into tablename (field)values ('$string')