您好我在尝试通过选择我已经排序和插入的复选框将信息数组插入数据库中的字段但我能够插入重复项,这是不好的我使用以下内容插入项目
$list = $_POST['sub'];
// for each loop to insert each value into the database with the selected users informtion
foreach ($list as $value) {
// The query to run
$listQuery='INSERT INTO tbl_list (`userId`, `subId`) VALUES (\'' . $id . '\', \'' . $value . '\')';
// Run the query
$objects->query($listQuery);
}
答案 0 :(得分:2)
您应为(userId
,subId
)添加唯一键:
ALTER TABLE tbl_list ADD UNIQUE(`userId`, `subId`)
然后,您应该使用INSERT IGNORE
或REPLACE INTO
来避免插入过程中的错误。
答案 1 :(得分:0)
答案 2 :(得分:0)
要将重复的条目停止到数据库中,您可以执行此操作。请按步骤
进行操作> 1.set a unique key on the table
after Complete create unique key you have to decide what you want to do when there's a duplicate
> 2. ignore it
> 3.Overwrite the previously entered record
> Update some counter
答案 3 :(得分:-1)
你需要做两件事
首先制作您的userId主键,然后尝试此查询
$ listQuery =' INSERT INTO tbl_list(userId
,subId
)VALUES(\''。$ id。' \',\& #39;'。$ value。' \')重复密钥更新userId = LAST_INSERT_ID()';