昨天我问了一个类似的问题,但在等待之后,我发现问题的一部分,但现在我又陷入了困境,我试图在搜索结果很长时显示...
因为我的分页链接将继续显示,并且不会停止,直到页面上显示每个链接。PHP和MySQL的分页显示问题
例如,我试图在下面的示例中实现以下内容。有人能帮我修复我的代码,以便我可以更新我的网站。谢谢
这是我想要能够做到的。
First Previous 1 2 ... 5 6 7 8 9 10 11 12 13 ... 199 200 Next Last
这是我的分页代码,显示链接。
$display = 20;
if (isset($_GET['p']) && is_numeric($_GET['p'])) {
$pages = $_GET['p'];
} else {
$q = "SELECT COUNT(id) FROM comments WHERE user_id=3";
$r = mysqli_query ($mysqli, $q) or trigger_error("Query: $q\n<br />MySQL Error: " . mysqli_error($mysqli));
$row = mysqli_fetch_array ($r, MYSQLI_NUM);
$records = $row[0];
if ($records > $display) {
$pages = ceil ($records/$display);
} else {
$pages = 1;
}
}
if (isset($_GET['s']) && is_numeric($_GET['s'])) {
$start = $_GET['s'];
} else {
$start = 0;
}
//content goes here
if ($pages > 1) {
echo '<br /><p>';
$current_page = ($start/$display) + 1;
if ($current_page != 1) {
echo '<a href="index.php">First</a>';
}
if ($current_page != 1) {
echo '<a href="index.php?s=' . ($start - $display) . '&p=' . $pages . '">Previous</a> ';
}
for ($i = 1; $i <= $pages; $i++) {
if ($i != $current_page) {
echo '<a href="index.php?s=' . (($display * ($i - 1))) . '&p=' . $pages . '">' . $i . '</a> ';
} else {
echo '<span>' . $i . '</span> ';
}
}
if ($current_page != $pages) {
echo '<a href="index.php?s=' . ($start + $display) . '&p=' . $pages . '">Next</a>';
}
if ($current_page != $pages) {
echo '<a href="index.php?s=' . ($pages - 1) . '&p=' . $pages . '">Last</a>';
}
echo '</p>';
}
哇,你有耐心:“我问过类似的问题,这样的昨天,而永远的等待后,我想通了这个问题的一部分......“我想所有这些你付钱帮助的人都需要脱下他们的屁股并作出回应。鼓励免费援助的方式。 – MJB 2010-05-11 16:23:08
你的其他问题发生了什么?我没有看到你的问题历史...... – 2010-05-11 16:24:51
@MJB我只是在寻求帮助和陈述事实,所有的帮助总是感激,但任何人的聪明屁股评论是不是:) – TaG 2010-05-11 16:26:25