PHP - 如何选择多个复选框并显示所选复选框中的所有值?

标签 php mysql

我有一个 html 表,其中包含特定表中的所有值,我想添加一个更新按钮来更新特定行

我想使用复选框更新这些行。

用户只需选中选择框并单击按钮,该按钮将显示所选行中的所有信息。

我这里有一些我创建的代码,但我只能读取最后选定的框值。

我使用 MVC 结构,但有我自己的规则。

这里是模型,我在模型内创建了函数:

$editjo_query = ("SELECT * FROM my_table");

$print_editjo = db_array($editjo_query, 'a+'); //this is a function that i created to    select, ignore please

if(!empty($_POST['editcheck'])){

    $editcheckbox = $_POST['editcheck'];
    $countCheckedit = count($_POST['editcheck']);

    for($i=0;$i<$countCheckedit;$i++) {
        $edit_id = $editcheckbox[$i];

        $editjo_query = ("SELECT * FROM my_table WHERE id=$edit_id");

        $print_editjo = db_array($editjo_query, 'a+'); //this is a function that i created to select, ignore please
     }
}

这个函数正在 View 中被调用

function editjoview($print_editjo){
     foreach($print_editjo as $check){
        echo $check['id'];
     }
}

最佳答案

您总是使用 $print_editjo = db_array($editjo_query, 'a+'); 写入 $print_editjo 并且您不处理它。因此,在 for 循环中,您将覆盖它,留下最后一个条目。 试试这个:

$print_editjo = array();
for($i=0;$i<$countCheckedit;$i++) {
  $edit_id = $editcheckbox[$i];
  $editjo_query = ("SELECT * FROM my_table WHERE id=$edit_id");
  $print_editjo[] = db_array($editjo_query, 'a+');
}

在您看来,迭代数组 $print_editjo 而不是仅仅将 $print_editjo 作为最后一个条目。

注意:如果您添加 View 中函数的调用方式,帮助可能会更加精确。

关于PHP - 如何选择多个复选框并显示所选复选框中的所有值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23079054/

相关文章:

php - Symfony 3.4 在我的包中使用 View

php - 如果在 php 中满足条件,则将数组对象添加到 foreach 循环中的数组

php - 创建自定义帖子类型时重命名 $args 会导致任何冲突吗?

mysql - 如何写一条结果集两列唯一的SQL语句?

mysql - 外键是否可以存储与主键值不匹配的值?

php - 如何在PHP中动态创建具有多个字段的表

javascript - 在 PHP 中获取窗帘元素 ID 的文本

mysql - MySQL中添加约束语法的区别?

mysql - 在 WHERE 子句中使用变量会导致查询永远持续

mysql - 如何修复硬盘已满的 MySQL 服务器?