简体   繁体   English

请帮助解决 php 中的分页问题如何隐藏相同的页面

[英]Please help to fix pagination problem in php how to hide same pages

I'm working on a project fetching table records from mysql database using php and implementing the pagination, Code is working fine but it's showing all pages like <1 2 3 4 5 6 7 8 9 10> But I am trying to hide some pages like <1 2 3...9 10>,我正在开发一个项目,使用 php 从 mysql 数据库中获取表记录并实现分页,代码工作正常,但它显示所有页面,如 <1 2 3 4 5 6 7 8 9 10> 但我试图隐藏一些页面像 <1 2 3...9 10>,

           <?php
              $result = $con->prepare("SELECT COUNT(id) FROM ".$table." ");
              $result->execute(); 
              $row = $result->fetch(); 
              $total_records = $row[0]; 
              
              $total_pages = ceil($total_records / $limit ); 
              $items_offset = $limit*($page-1);
              $items= $limit+5; 
              echo '<ul class="pagination">';
              if($page==1){echo '<li class="prev">
              <a href="add-expenses.php?page='.$page.'"><span class="fa fa-chevron-left"></span></a>
              </li>'; 
              }else{echo '<li class="prev">
              <a href="add-expenses.php?page='.($page-1).'"><span class="fa fa-chevron-left"></span></a>
              </li>'; 
              }
                for ($i=1; $i<=$total_pages; $i++) {  if ($i==$page) {
              $active= " class='active'";
              echo "<li ".$active." ><a href='add-expenses.php?page=".$i."'>".$i."</a></li>";
              }else{ echo "<li><a href='add-expenses.php?page=".$i."'>".$i."</a></li>";
              } }
              
              if($page==$total_pages){ echo '<li class="next"><a href="add-expenses.php?page='.$page.'"><span class="fa fa-chevron-right"></span></a></li>';  
              }else{ echo '<li class="next"><a href="add-expenses.php?page='.($page+1).'"><span class="fa fa-chevron-right"></span></a></li>';   } echo '</ul>';
              ?>
              
        <div class="dataTables_info" id="datatable-default_info" role="status" aria-live="polite">
           <?php 
              if($page==1){echo "Showing"; 
                echo " "; 
                echo "1"; 
                echo " "; 
                echo "to"; 
                echo" "; 
                if($page*$limit>=$total_records){ echo $total_records;
                }else{ echo $page*$limit;
                } 
                echo " "; 
                echo "of"; 
                echo " "; 
                echo $total_records; 
                echo " "; 
                echo "Entries"; 
              }else{
                echo "Showing"; 
                echo " "; 
                echo $items_offset+1; 
                echo " "; 
                echo "to"; 
                echo" "; 
                if($page*$limit>=$total_records){ echo $total_records;
                }else{ echo $page*$limit;
                }
                echo " "; 
                echo "of"; 
                echo " "; 
                echo $total_records; 
                echo " "; 
                echo "Entries"; 
              }
              ?>
        </div>

Please help to fix it Thanks in advance.请帮助修复它提前谢谢。

at for ($i=1; $i<=$total_pages; $i++) { , modify it so not all of the page is displayedfor ($i=1; $i<=$total_pages; $i++) { ,修改它以便不显示所有页面

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM