gpt4 book ai didi

PHP:如何获取数组复选框值,然后将每个单独的结果插入数据库查询?

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

我有一个动态生成复选框列表的表单:name="cursoID[]"每个值都对应于 cursoID ($curso['cursoID']),它是从显示项目 ID 列表的 mySQL SELECT 查询中获取的值。

用户可以选择 N 个项目,我需要取其中的每一个(即 $cursoID = $_POST['cursoID'];)以保存将它们放入 INSERT 查询中。

在表单中,我使用 while 循环生成每个项目:

<?php 
$conectar = mysqli_connect(HOST, USER, PASS, DATABASE);
$query = " SELECT cursoID, nombreCurso, cursoFechaInicio, modalidadCurso, estadoCurso
FROM cursos
WHERE estadoCurso='abierto'";

$buscarCurso = mysqli_query($conectar,$query);

echo '<div class="checkbox">';
while ($curso=mysqli_fetch_assoc($buscarCurso)) {
echo '<input type="checkbox" name="cursoID[]" value="'.$curso['cursoID'].'">'.$curso['nombreCurso'];
}
echo '</div>';

?>

为了插入该字段,我的数据库咨询是一个简单的选择:

INSERT INTO cursosUsuarios 
(userID, cursoID)
VALUES
('$userID', '$cursoID')

我对 $userID 没有问题,单个值也是如此。

如何使用 $cursoID = $_POST['cursoID'] 将其添加到数据库中?我一直在阅读其他一些问题(如 this onethis other one ),但无法将其应用于我的案例,因为我不知道如何将其插入数据库。

最佳答案

我不知道如何使用 mysqli_*,所以我会用 PDO 编写。如果我能正确理解,这就是您所需要的。

ps:安全被忽略。

$cursors = $_POST['cursorID'];
$user = $_POST['user'];

foreach ($cursors as $cursor) {

$query = $DB->prepare('INSERT INTO table (user, cursor) VALUES (:user, :cursor)');

$query->bindValue(':user', $user, PDO::PARAM_INT);
$query->bindValue(':cursor', $cursor, PDO::PARAM_INT);

$query->execute();
}

关于PHP:如何获取数组复选框值,然后将每个单独的结果插入数据库查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38576010/

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