为每个循环添加复选框以从数据库中删除

时间:2016-02-10 22:06:01

标签: php mysql

我正在学习PHP,开始一个练习项目来制作一个待办事项列表。 该列表允许用户使用输入字段将数据输入数据库,并使用while和foreach循环显示数据库中的数据。

我想为显示的每个项目添加一个复选框,允许用户检查他们要删除的列表中的哪些项目,并且复选框的值与对应的id列相对应item,然后我将添加一个提交按钮,清除已检查的项目。

我正在使用的数据库表有两列,一个是自动增量id列,另一列是描述列。

这是循环:

<?php

$query = "SELECT * FROM list_data;";
$list = $mysqli->query($query);

while ($row = $list->fetch_array(MYSQLI_ASSOC)):
    echo "<tr>";

    foreach($row as $list_item) {
        echo "<td>" . $list_item . "</td>";
    }

    echo "</tr>";

endwhile;

?>

我试过了:

foreach ($row as $id => $description) {
    echo "<td>" . $id . $description . "</td>";
}

但是由于soeme原因,这会返回列名,而值如下:
id1 descriptionTodo列表项目编号一 id2 descriptionTodo列表项目编号二。
id3 descriptionTodo列表项目编号三。
id5 descriptionTodo列表项目编号四。

谁能让我走上正确的道路? 如果有人想看到整个项目,我已将项目上传到github 提前感谢您的任何帮助和建议。

1 个答案:

答案 0 :(得分:1)

我不明白你为什么实际使用foreach,我会这样做:

<?php

$query = "SELECT * FROM list_data;";
$list = $mysqli->query($query);

while ($row = $list->fetch_array(MYSQLI_ASSOC)):
echo "<tr>";

echo"<td><input type='checkbox' value='".$row['id']."'</td>      <td>".$row['description']."</td>";

echo "</tr>";

endwhile;

?>
相关问题