澳门新葡亰平台游戏网站PHP应用分页显示制作详细讲解

澳门新葡亰平台游戏网站,1、前言
分页展现是一种非常遍布的浏览和显示大批量数额的措施,归属web编制程序中最常处理的风浪之一。对于web编制程序的行家里手来讲,编写这种代码实乃和人工呼吸相像自然,可是对于初读书人的话,平日对那个标题一头雾水绪,因而非常撰写此文对那个难点张开详细的授课,力求让看完那篇小说的恋人在看完之后对于分页突显的准绳和得以完结形式有所精晓。本文符合初大家阅读,全体示例代码均使用php编写。
2、原理
所谓分页展现,也等于将数据库中的结果集人为的分为一段一段的来显示,这里须求四个最初的参数:
每页多少条记下? 当前是第几页?
今后倘诺再给自身叁个结出集,作者就足以突显某段特定的结果出来。
至于别的的参数,比方:、、总页数等等,都足以依赖前边那多少个东西得到。
以mysql数据库为例,假如要从表内截取某段内容,sql语句能够用:select *
from table limit offset,
rows。看看上边一组sql语句,尝试一下意识其间的规率。 前10条记下:select
* from table limit 0,10 第11至20条记录:select * from table limit
10,10 第21至30条记录:select * from table limit 20,10 ……
这一组sql语句其实正是当$PageSize=10的时候取表内每一页数据的sql语句,我们得以总计出这么一个模板:select
* from table limit ($CurrentPageID – 1) * $PageSize, $PageSize
拿那些模板代入对应的值和上面那一组sql语句对照一向下探底望是否那么回事。解决了最要害的怎么获取数据的主题素材现在,剩下的就一味是传递参数,结构合适的sql语句然后选用php从数据库内获取数据并出示了。以下小编将用现实代码加以证实。
3、简单代码
请详细阅读以下代码,自身调度运营三遍,最佳把它校订三回,加上本身的法力,比如寻找等等。<?php // 建立数据库连接 $link = mysql_connect("localhost", "mysql_user", "mysql_password") or die("Could not connect: " . mysql_error()); // 获取当前页数 if( isset($_GET['page']) ){ $page = intval( $_GET['page'] ); } else{ $page = 1; } // 每页数量 $PageSize = 10; // 获取总数据量 $sql = "select count(*) as amount from table"; $result = mysql_query($sql); $row = mysql_fetch_row($result); $amount = $row['amount']; // 记算总共有多少页 if( $amount ){ if( $amount < $page_size ){ $page_count = 1; } //如果总数据量小于$PageSize,那么只有一页 if( $amount % $page_size ){ //取总数据量除以每页数的余数 $page_count = (int)($amount / $page_size) + 1; //如果有余数,则页数等于总数据量除以每页数的结果取整再加一 }else{ $page_count = $amount / $page_size; //如果没有余数,则页数等于总数据量除以每页数的结果 } } else{ $page_count = 0; } // 翻页链接 $page_string = ''; if( $page == 1 ){ $page_string .= '第一页||'; } else{ $page_string .= '<a href=?page=1>第一页</a>|<a href=?page='.($page-1).'></a>|'; } if( ($page == $page_count) || ($page_count == 0) ){ $page_string .= '|尾页'; } else{ $page_string .= '<a href=?page='.($page+1).'></a>|<a href=?page='.$page_count.'>尾页</a>'; } // 获取数据,以二维数组格式返回结果 if( $amount ){ $sql = "select * from table order by id desc limit ". ($page-1)*$page_size .", $page_size"; $result = mysql_query($sql); while ( $row = mysql_fetch_row($result) ){ $rowset[] = $row; } }else{ $rowset = array(); } // 没有包含显示结果的代码,那不在讨论范围,只要用foreach就可以很简单的用得到的二维数组来显示结果?>

本消息共2页,当前在第1页12

You can leave a response, or trackback from your own site.

Leave a Reply

网站地图xml地图