0

检索输入:

  <?php 
   $query1 = "SELECT * FROM table2 WHERE id='{$user}' order by srno desc " ;
   $result1=mysql_query($query1,$con);
   if (!($result1) )
   {
      die('Error: ' . mysql_error($con));
   }
   else
   {
      $values1= mysql_fetch_array($result1);
   }
    mysql_close($con);
  ?>

对于降序显示,我这样做:

while($values1)
{
  echo $row['srno'];
  echo " " . $row['Symptoms'];
  echo "<br>";
}

这使得所有记录以降序显示在同一页面上。如何让它们显示在不同的页面上。有没有一种方法可以使用索引访问数组 values1 的值,以便我可以在不同的页面上操作不同的记录。

4

2 回答 2

1

如果您想在不同的页面上显示不同的结果,您可以随时在查询中使用限制和偏移量过滤它们:

 // In PAGE 1
$query1 = "SELECT * FROM table2 WHERE id='{$user}' order by srno desc LIMIT 10" ; 


 // In PAGE 2
$query2 = "SELECT * FROM table2 WHERE id='{$user}' order by srno desc LIMIT 10 OFFSET 10" ; 

注意:这称为服务器端分页。

编辑:很明显,您永远不应该多次编写该查询,自动化分页过程并根据它获得的参数在 php 脚本中为查询添加偏移限制。然后,您将调用 php 脚本并向其传递一个参数,例如

         myPHPScript.php?page=2

顺便说一句,在您的代码中,您只显示第一个结果。你应该做:

          while ($row = mysql_fetch_array($result1, MYSQL_NUM)) {

          }
于 2013-11-06T03:52:44.740 回答
0

您不能跨页面使用这样的结果集。您必须选择要在页面上使用的单个结果,然后将下一个/上一个页面与链接中的下一个/上一个结果的 ID 链接,然后在下一页上选择该结果。

要从当前结果中获取下一个和上一个 id,请查看这篇文章。

您可能还需要在输出指向它们的链接之前检查下一个/上一个结果是否存在。

于 2013-11-06T03:48:16.260 回答