我是PHP的初学者,我努力使用PHP和MySQL制作ToDo列表,它提供了如下图所示的任务输出:
一切都很好。我可以通过表单添加任务,在表格中检索它们,甚至可以使用每行旁边的删除按钮删除它们,如上图所示。一切都很好,直到我注意到任务列表没有按ID排序。如上图所示,ID 40位于顶部,ID 39位于下方。坦率地说,在我得到输出后,如图所示,每个ID的排列都搞乱了。
我想获得一个输出,按照我的ID的升序排序我的任务。
我该怎么办?
为了您的考虑,我正在嵌入我的文件的代码,抛出下面的输出。
view.php 的
<?php
ob_start();
include('connect.php');
$selectFrom = "SELECT * FROM todo";
$q = $connection->query($selectFrom);
$totalRows = mysqli_num_rows($q);
for ( $i=1; $i<=$totalRows; $i++) {
$arrayResult = mysqli_fetch_array($q);
include('table.php');
}
if (isset($_GET['del_task'])) {
$id = $_GET['del_task'];
mysqli_query($connection, "DELETE FROM todo WHERE id=".$id);
header('location: view.php');
}
$tasks = mysqli_query($connection, "SELECT * FROM tasks");
mysqli_close($connection);
?>
答案 0 :(得分:1)
在这种情况下,您应该使用MySQL ORDER BY
语法。
这将是:
SELECT * FROM todo ORDER BY id ASC
有很多初学者的错误,但是因为你实际上是初学者,所以应该是“开头”(双关语)。
答案 1 :(得分:0)
使用以下代码替换您的任务查询
$tasks = mysqli_query($connection, "SELECT * FROM tasks order by id ASC");