输出中获得的值未按正确顺序排序

时间:2018-01-16 15:30:13

标签: php html mysql

我是PHP的初学者,我努力使用PHP和MySQL制作ToDo列表,它提供了如下图所示的任务输出:

Final Output of my ToDo list

一切都很好。我可以通过表单添加任务,在表格中检索它们,甚至可以使用每行旁边的删除按钮删除它们,如上图所示。一切都很好,直到我注意到任务列表没有按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);
  ?>

2 个答案:

答案 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");