Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 分页在下一页显示与第一页相同的结果_Php_Pagination - Fatal编程技术网

Php 分页在下一页显示与第一页相同的结果

Php 分页在下一页显示与第一页相同的结果,php,pagination,Php,Pagination,我正在尝试将分页添加到我的网站上,我复制了PHP怪物网站上关于基本分页的教程。在大多数情况下,它工作正常,在第一页上只显示10个结果,但是当我按下下一页时,它显示的10个结果与上一页相同。此外,底部的分页栏上只有两个页面链接,因为我的数据库中有50多个属性,所以至少应该有5个页面 我的代码是: // find out how many rows are in the table $sql = "select count(*) from pr

我正在尝试将分页添加到我的网站上,我复制了PHP怪物网站上关于基本分页的教程。在大多数情况下,它工作正常,在第一页上只显示10个结果,但是当我按下下一页时,它显示的10个结果与上一页相同。此外,底部的分页栏上只有两个页面链接,因为我的数据库中有50多个属性,所以至少应该有5个页面

我的代码是:

// find out how many rows are in the table
                       $sql = "select count(*) from properties";
                       $result = $myDatabase->query($sql)->rowCount();
                       $numRows = $result[0];

                       // number of rows to show per page
                       $rowsPerPage = 10;
                       // find out total pages
                       $totalPages = ceil($numRows / $rowsPerPage);

                       // get the current page or set a default
                       if (isset($_GET['currentPage']) && is_numeric($_GET['currentPage'])) {
                           // cast var as int
                           $currentPage = (int) $_GET['currentPage'];
                       } else {
                           // default page num
                           $currentPage = 1;
                       } // end if

                       // if current page is greater than total pages...
                       if ($currentPage > $totalPages) {
                           // set current page to last page
                           $currentPage = $totalPages;
                       } // end if
                       // if current page is less than first page...
                       if ($currentPage < 1) {
                           // set current page to first page
                           $currentPage = 1;
                       } // end if

                       // the offset of the list, based on current page
                       $offset = ($currentPage - 1) * $rowsPerPage;

                       // get the info from the db
                        $sqlQuery = "SELECT * FROM properties limit $offset, $rowsPerPage";
                        $data = $myDatabase->query($sqlQuery)->fetchAll();
                        set_time_limit(0);

                        foreach($data as $row) {

                        $properties = new DBdata($row['id'], $row['name'], $row['address'], $row['type'], $row['price'], $row['sqft'], $row['beds'], $row['baths'], $row['agentPhone'], $row['status'], $row['agentEmail']);
                        $properties->output();

                        }

                       /******  build the pagination links ******/
                       // range of num links to show
                       $range = 3;

                       // if not on page 1, don't show back links
                       if ($currentPage > 1) {
                           // show << link to go back to page 1
                           echo " <a href='{$_SERVER['PHP_SELF']}?currentPage=1'><<</a> ";
                           // get previous page num
                           $prevpage = $currentPage - 1;
                           // show < link to go back to 1 page
                           echo " <a href='{$_SERVER['PHP_SELF']}?currentPage=$prevpage'><</a> ";
                       } // end if

                       // loop to show links to range of pages around current page
                       for ($x = ($currentPage - $range); $x < (($currentPage + $range) + 1); $x++) {
                           // if it's a valid page number...
                           if (($x > 0) && ($x <= $totalPages)) {
                               // if we're on current page...
                               if ($x == $currentPage) {
                                   // 'highlight' it but don't make a link
                                   echo " [<b>$x</b>] ";
                                   // if not current page...
                               } else {
                                   // make it a link
                                   echo " <a href='{$_SERVER['PHP_SELF']}?currentPage=$x'>$x</a> ";
                               } // end else
                           } // end if
                       } // end for

                       // if not on last page, show forward and last page links
                       if ($currentPage != $totalPages) {
                           // get next page
                           $nextpage = $currentPage + 1;
                           // echo forward link for next page
                           echo " <a href='{$_SERVER['PHP_SELF']}?currentPage=$nextpage'>></a> ";
                           // echo forward link for lastpage
                           echo " <a href='{$_SERVER['PHP_SELF']}?currentPage=$totalPages'>>></a> ";
                       } // end if
                       /****** end build pagination links ******/
我还希望底部的分页按钮看起来比现在好一点,请有人告诉我怎么做。提前感谢您的回复