I am new to pagination and have managed to get this:
Now i want if the page is = 0 it must go back to page 1, and the last page should just be looping
i want the following :
(1) if no page var is given, default to 1. (2) previous page is page - 1 (3) previous page is page - 1 (4) next page is page + (5) last page should be equals to $total_pages
<?php
$limit = 6;
if (isset($_GET["page"]))
{
$page = $_GET["page"];
} else
{
$page = 1;
};
$total_records = $pagination;
$total_pages = ceil($total_records/$limit);
if($page = 0)
$page = 1;
$prev = $page - 1;
$next = $page + 1;
$pagLink = "<ul class='pagination' class='justify-content-center'>";
$pagLink .= "<li class='page-item'>
<a class='page-link' href='home.php?page=".$prev."' aria-label='Back'>
<span aria-hidden='true'>«</span>
<span class='sr-only'>Next</span>
</a>
</li>";
for ($i=1; $i<=$total_pages; $i++) {
$pagLink .= "<li class='page-item'><a class='page-link' href='home.php?page=".$i."'>".$i."</a></li> ";
};
$pagLink .= "<li class='page-item'>
<a class='page-link' href='home.php?page=".$next."' aria-label='Next'>
<span aria-hidden='true'>»</span>
<span class='sr-only'>Next</span>
</a>
</li>";
echo $pagLink . "</ul>";
?>
This should probably be the issue, or at least it is an issue in your code:
if($page = 0)
$page = 1;
$prev = $page - 1;
$next = $page + 1;
This =
means assignment, what you are actually saying is that "if assignment of $page = 0
goes well, do the following... So $page
is always equal to 1, no matter what. What you actually want is check the variable if it's equal to 0, like this
if($page == 0)
$page = 1;
$prev = $page - 1;
$next = $page + 1;
See the double ==
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.