gpt4 book ai didi

php - 数组内爆后插入失败

转载 作者:行者123 更新时间:2023-11-29 13:01:02 25 4
gpt4 key购买 nike

我想将内爆数组插入数据库..

示例:$array = array('A','B','C') ..内爆后,该值将是 A,B,C ,因为我使用 implode(",",$array) ...

然后我想插入数据库但失败了,它说:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') values ('Operation Director','Operation Director','F001')

我应该做什么?

这是 MySQL 查询:

$code = $_POST['code'];
$position = $_POST['check'];
$checkok = implode(",",$position);

mysql_query("insert into checklist (check_ok,check_pos,check_code) values ('$checkok','$checkok','$code')") or die (mysql_error());

最佳答案

首先,您应该使用PDOmysqli并使用准备好的语句来防止潜在的 SQL 注入(inject)攻击。

其次,语句本身存在语法错误;第一个右括号之前的尾随逗号。

假设您已经配置了正确的字符集,您可以使用:

$sql = sprintf(
"insert into checklist (check_ok,check_pos,check_code) values ('%s','%s','%s')",
mysql_real_escape_string($checkok),
mysql_real_escape_string($checkok),
mysql_real_escape_string($code)
);

mysql_query($sql) or die (mysql_error());

关于php - 数组内爆后插入失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23333448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com