ai didi

PHP - 尝试根据是否选中复选框来更新多个 mysql 值

转载 作者:行者123 更新时间:2023-11-29 23:51:21 24 4
gpt4 key购买 nike

我目前正在开发积分/奖励系统,我面临的问题是我正在像这样查询数据库;

$result = mysqli_query($con,"SELECT * FROM users WHERE usertype='group_two' ORDER BY 
points DESC");
while($row = mysqli_fetch_array($result)) {
echo "<li class='select-area'><label><span>" . $row['firstname'] . "</span>";
echo "<span>" . $row['lastname'] . "</span>";
echo "<span>" . $row['points'] . "</span><span><input type='checkbox'
name='receipient_id'
value=" . $row['id'] ." /></span></label></li>";
}

这列出了能够接收积分的用户,并且效果很好,但是如果我选择多个用户,它只会将积分发送给最后一个检查的用户,我希望它将积分发送给所有检查的用户。

我的更新查询如下;

$update_query="UPDATE users u1 JOIN users u2
ON u1.id = '$sender_id' AND u2.id= receipient_id
SET u1.points = '$sender_updated_points',
u2.points = '$receiver_updated_points';";

使用复选框选择多行进行更新时我是否遗漏了任何具体技巧?我已经用谷歌搜索了大约 16 个小时。

最佳答案

您可以将复选框的 name 属性作为数组提供,例如

<input type='checkbox' name='receipient_id[]' value=" . $row['id'] ." />
^

这样,当带有选定复选框的表单发送到 PHP 脚本时,变量:$_POST['receipient_id'] 将包含一个数字数组,其中包含选定复选框的值,索引依次为:0、1、2 等。

$_POST['receipient_id'][0] 将是第一个选定复选框的值,$_POST['receipient_id'][1] 将是第二个选定复选框的值等等。

关于PHP - 尝试根据是否选中复选框来更新多个 mysql 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25636819/

24 4 0
文章推荐: php - 通过执行分页、排序来减少连接表?
文章推荐: php - 在这个编码过程下进行搜索
文章推荐: php - php中的下拉框从mysqli数据库获取部分值
文章推荐: javascript - 获取函数以作为用户类型运行
行者123
个人简介

我是一名优秀的程序员,十分优秀!

滴滴打车优惠券免费领取
滴滴打车优惠券
全站热门文章
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com