为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 PHP 限制/分页我的 MongoDB 搜索结果?

如何使用 PHP 限制/分页我的 MongoDB 搜索结果?

PHP
拉风的咖菲猫 2023-09-22 17:53:25
我想像谷歌那样将我的搜索结果分成页面。我尝试以 5 人为一组进行:<?php//connect to Atlas and include Composer files      require 'dbconnection.php';      require 'vendor/autoload.php';$page = $_GET["page"];if ($page=="" || $page=="1"){    $page1=0;}else{    $page1=($page*5)-5;}      $options=["limit" => 5,      "skip" => 0      ];      $query= $collection->find([], $options);?><!DOCTYPE html><html><head>   <title>Results</title></head><body><table>   <tr>                          <th>Film</th>                          <th>Actor</th>                          <th>Director</th>                          <th>Year</th>                          <th>Genre</th>   </tr><?php     foreach($query as $value) {         echo "<tr>";         echo "<td>".$value->film."</td>";         echo "<td>".$value->actor."</td>";         echo "<td>".$value->director."</td>";         echo "<td>".$value->year."</td>";         echo "<td>".$value->category."</td>";         echo "<td>";         echo "</tr>";      };echo '</table>';$countr=$collection->count($query);$a=$countr/5;$a=ceil($a);echo "<br>"; echo "<br>";    for($b=1;$b<=$a;$b++)    {                ?><a href="results.php?page=<?php echo $b; ?>" style="text-decoration:none "><?php echo $b." "; ?></a> <?php            }   ?></body></html>当我打开网页时,将显示五个结果(按预期),但底部的按钮不会引导我进入任何其他页面。我究竟做错了什么?
查看完整描述

1 回答

?
忽然笑

TA贡献1806条经验 获得超5个赞


<?php

//connect to Atlas and include Composer files

      require 'dbconnection.php';

      require 'vendor/autoload.php';


$page = $_GET["page"];

if ($page=="" || $page=="1")

{

    $page1=0;

}

else{

    $page1=($page*5)-5;

}

      $options=['limit' => 5,

      'skip' => $page1

      ];

      $query= $collection->find([], $options);

?>

<!DOCTYPE html>

<html>

<head>

   <title>Results</title>

</head>

<body>


<table>

   <tr>

                          <th>Film</th>

                          <th>Actor</th>

                          <th>Director</th>

                          <th>Year</th>

                          <th>Genre</th>

   </tr>

<?php


     foreach($query as $value) {

         echo "<tr>";

         echo "<td>".$value->film."</td>";

         echo "<td>".$value->actor."</td>";

         echo "<td>".$value->director."</td>";

         echo "<td>".$value->year."</td>";

         echo "<td>".$value->category."</td>";

         echo "<td>";

         echo "</tr>";

      };

echo '</table>';


$countr=$collection->count($query);

$a=$countr/5;

$a=ceil($a);

echo "<br>"; echo "<br>";

    for($b=1;$b<=$a;$b++)

    {

        

        ?><a href="results.php?page=<?php echo $b; ?>" style="text-decoration:none "><?php echo $b." "; ?></a> <?php

        

    }


   ?>



</body>

</html>


查看完整回答
反对 回复 2023-09-22
  • 1 回答
  • 0 关注
  • 73 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信