gpt4 book ai didi

php - 将多个复选框插入数据库列

转载 作者:行者123 更新时间:2023-11-28 23:31:11 26 4
gpt4 key购买 nike

如果多个复选框被选中到我的数据库中的一列中,我将尝试插入这些复选框的值。

这是我的...

if(!empty($_POST['dyuhdb'])) {
foreach($_POST['dyuhdb'] as $dyuhdb) {
$dyuhdb . ",";
}
}

$sql = "INSERT INTO MRF (Q1) VALUES ('". $dyuhdb ."')";

<div class="checkbox">
<label><input type="checkbox" name="dyuhdb[]" value="1">1</label>
</div>

<div class="checkbox">
<label><input type="checkbox" name="dyuhdb[]" value="2">2</label>
</div>

<div class="checkbox">
<label><input type="checkbox" name="dyuhdb[]" value="3">3</label>
</div>

出于某种原因,如果勾选 1 和 2,只有 2 会进入我的数据库?

我做错了什么?

最佳答案

问题是因为下面一行,

$dyuhdb . ",";

foreach 循环的每次迭代中,您都在覆盖变量 $dyuhdb。而是简单地使用 implode()函数将数组元素与字符串 (,) 连接起来,并在您的 INSERT 查询中使用它,如下所示:

if(isset($_POST['dyuhdb']) && count($_POST['dyuhdb'])){
$checkbox_values = implode(",", $_POST['dyuhdb']);
$sql = "INSERT INTO MRF (Q1) VALUES ('". $checkbox_values ."')";

// execute your query
}

旁注:了解 prepared statements因为现在您的查询容易受到 SQL 注入(inject)的影响。另见 how you can prevent SQL injection in PHP .

关于php - 将多个复选框插入数据库列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37302089/

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