繁体   English   中英

分页不会超出职位范围

[英]Pagination will not go beyond the post

下一个和上一个分页。 对于上一个分页页面,请不要转到负数(例如不低于0),但对于下一个页面,其分页不应超过帖子。 当我单击下一步时,它将使页面的点击量超过帖子。 珍贵的我已经做到了,但是接下来我该怎么办。 当帖子结束或页面结束时如何禁用下一个帖子。 我不知道这个。 任何帮助将不胜感激。

PHP

<?php 
$page = (isset($_GET['page']) && $_GET['page'] > 0) ? (int)$_GET['page'] : 1;
$perpage = 10;
$limitp = ($page > 1) ? ($page * $perpage) - $perpage : 0;


$query = mysqli_query($dbc, "SELECT SQL_CALC_FOUND_ROWS * FROM test LIMIT {$limitp}, {$perpage}");
$records = mysqli_fetch_all($query);

$total = mysqli_query($dbc, "SELECT FOUND_ROWS() as total");
$total = mysqli_fetch_assoc($total)['total'];

$pages = ceil($total/$perpage);

?>

<?php 
include ("connection.php");
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Pagination</title>
    <link rel="stylesheet" href="style.css">
</head>
<body>

<div>
    <a href="?page=<?php $pagep = $page -1; echo $pagep; ?>">Prev</a>
    <a href="?page=<?php $pagen = $page +1; echo $pagen; ?>">Next</a>
</div>

<table>
    <tr>
        <th>ID</th>
        <th>Email</th>
    </tr>
    <?php foreach ($records as $record): ?>
        <tr>
            <td><?php echo $record[0]; ?></td>
            <td><?php echo $record[4]; ?></td>
        </tr>
    <?php endforeach; ?>
</table>
</body>
</html>

如果当前页面比1大,则需要为prev按钮添加条件,并且如果当前页面的总页面较少,则显示prev btn与下一个按钮相同(即totalrecord /在您的情况下限制为10并且如果总记录是22而不是22/10等于2.2获取ceil值,该值等于2.2到3),因此如果当前页面小于3且显示下一个按钮

希望有道理我也在尝试在您的代码中解决希望此代码有效

 <?php $page = (isset($_GET['page']) && $_GET['page'] > 0) ? (int)$_GET['page'] : 1; $perpage = 10; $limitp = ($page > 1) ? ($page * $perpage) - $perpage : 0; $limitn = ($limito) $query = mysqli_query($dbc, "SELECT SQL_CALC_FOUND_ROWS * FROM test LIMIT {$limitp}, {$perpage}"); $records = mysqli_fetch_all($query); $total = mysqli_query($dbc, "SELECT FOUND_ROWS() as total"); $total = mysqli_fetch_assoc($total)['total']; $pages = ceil($total/$perpage); ?> <?php include ("connection.php"); ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Pagination</title> <link rel="stylesheet" href="style.css"> </head> <body> <div> <?php if($page>1){ ?> <a href="?page=<?php $pagep = $page -1; echo $pagep; ?>">Prev</a> <?php } ?> <?php if($page<$pages){ ?> <a href="?page=<?php $pagen = $page +1; echo $pagen; ?>">Next</a> <?php } ?> </div> <table> <tr> <th>ID</th> <th>Email</th> </tr> <?php foreach ($records as $record): ?> <tr> <td><?php echo $record[0]; ?></td> <td><?php echo $record[4]; ?></td> </tr> <?php endforeach; ?> </table> </body> </html> 

暂无
暂无

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

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