求教一下,PHP+Mysql怎么实现图示分页?
分页导航链接可以这样写:
<?php
header('Content-Type: text/html;charset=utf-8');
$page = (!empty($_GET['p'])) ? intval($_GET['p']) : 1;
page($page);
function page($page=1, $page_size=10){
$total_records = 505;
$total_pagas = ceil($total_records/$page_size);
echo '页数: '.$total_pagas.'<br />';
if($total_pagas==0){
echo '<b>查询结果为空</b><br />';
}else if($page>$total_pagas || $page <= 0){
?>
<a href="page.php?p=1">最前</a><br />
<a href="page.php?p=<?php echo $total_pagas; ?>">最后</a><br />
<?php
echo '<b>第1页(没有该页,统一显示第一页)</b><br />';
$page = 1;
if($total_pagas>=$page+4){
for($i=$page+1;$i<=$page+4;$i++){
//echo $i;
?>
<a href="page.php?p=<?php echo $i; ?>">第<?php echo $i; ?>页</a><br />
<?php
}
if($page!=$total_pagas){
?>
<a href="page.php?p=<?php echo $page+1; ?>">下一页</a><br />
<?php
}
}else{
for($i=$page+1;$i<=$total_pagas;$i++){
//echo $i;
?>
<a href="page.php?p=<?php echo $i; ?>">第<?php echo $i; ?>页</a><br />
<?php
}
if($page!=$total_pagas){
?>
<a href="page.php?p=<?php echo $page+1; ?>">下一页</a><br />
<?php
}
}
}else{
?>
<a href="page.php?p=1">最前</a><br />
<a href="page.php?p=<?php echo $total_pagas; ?>">最后</a><br />
<?php
//前输出5页,后输出4页.
if($page<=5){
if($page!=1){
?>
<a href="page.php?p=<?php echo $page-1; ?>">上一页</a><br />
<?php
}
for($i=1;$i<$page;$i++){
//echo $i;
?>
<a href="page.php?p=<?php echo $i; ?>">第<?php echo $i; ?>页</a><br />
<?php
}
}else{
if($page!=1){
?>
<a href="page.php?p=<?php echo $page-1; ?>">上一页</a><br />
<?php
}
for($i=$page-5;$i<$page;$i++){
//echo $i;
?>
<a href="page.php?p=<?php echo $i; ?>">第<?php echo $i; ?>页</a><br />
<?php
}
}
echo '<b>第'.$page.'页(当前页)</b><br />';
if($total_pagas>=$page+4){
for($i=$page+1;$i<=$page+4;$i++){
//echo $i;
?>
<a href="page.php?p=<?php echo $i; ?>">第<?php echo $i; ?>页</a><br />
<?php
}
if($page!=$total_pagas){
?>
<a href="page.php?p=<?php echo $page+1; ?>">下一页</a><br />
<?php
}
}else{
for($i=$page+1;$i<=$total_pagas;$i++){
//echo $i;
?>
<a href="page.php?p=<?php echo $i; ?>">第<?php echo $i; ?>页</a><br />
<?php
}
if($page!=$total_pagas){
?>
<a href="page.php?p=<?php echo $page+1; ?>">下一页</a><br />
<?php
}
}
}
}
?>
?>
4 回答13.2k 阅读✓ 已解决
5 回答7.7k 阅读✓ 已解决
2 回答7.4k 阅读✓ 已解决
2 回答6.6k 阅读✓ 已解决
1 回答5.2k 阅读✓ 已解决
1 回答5k 阅读✓ 已解决
3 回答1.9k 阅读✓ 已解决
cc http://www.v2ex.com/t/158755