gpt4 book ai didi

php - 使用复选框从表中选择多行

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

我正在尝试将复选框用于带有 SELECT 的多个 sql 查询。

我有 3 个表,一张用于,一张用于用户,另一张用于将用户连接到名为 groupreluser 的不同组。根据选中的组,我希望它打印出属于这些组的每个用户的电话号码。

复选框是根据表 groups 的内容创建的

<form method="post">
<?php
$sql = "SELECT * FROM groups WHERE groupname LIKE '%minor%'";
$result = $conn->query($sql);

if($result->num_rows > 0){

while($row = $result->fetch_assoc()){

echo '<input type="checkbox" name="checked[]" value="'.$row['group_id'].'">'
. $row['groupname'] . '</br>';

}

}
?>
<input type="submit" name="submit" value="submit">
</form>

使用 sql 查询编写代码以获取电话号码。

if(isset($_POST['submit'])){

$check = $_POST['checked'];

if(!empty($check)){


foreach($check as $sel){
$sel = mysqli_real_escape_string($conn, $sel);


$sql = "

SELECT
groups.group_id,
groups.groupname,
groupreluser.user_id,
groupreluser.group_id,
users.user_id,
users.name,
users.phone
FROM
groupreluser
JOIN
groups
ON
groups.group_id = groupreluser.group_id
JOIN
users
ON
users.user_id = groupreluser.user_id
WHERE
groups.group_id = '$sel'

";

$res = $conn->query($sql);

if($res->num_rows > 0){

while($row = $res->fetch_assoc()){

echo $row['phone'] . '</br>';

}

}
}
}
}

只要我不使用复选框就可以正常工作,而是在 SELECT 语句中手动添加 group_id。知道为什么这不起作用吗?我错过了什么吗?不知道这是否是最好的方法......如果不清楚,请告诉我,我会尽力解释得更好

最佳答案

这一行可能不起作用:$check = mysqli_real_escape_string($conn, $_POST['checked']);

$_POST['checked'] 是一个数组。因此,您必须为数组中的每一项执行上面的行。

关于php - 使用复选框从表中选择多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40225357/

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