扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
PHP代码如下:
成都创新互联公司是一家专业提供金湖企业网站建设,专注与网站设计制作、做网站、H5开发、小程序制作等业务。10年已为金湖众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。
/*
Author:默默
Date :2006-12-03
*/
$page=isset($_GET['page'])?intval($_GET['page']):1; //这句就是获取page=18中的page的值,假如不存在page,那么页数就是1。
$num=10; //每页显示10条数据
$db=mysql_connect("host","name","pass"); //创建数据库连接
$select=mysql_select_db("db",$db); //选择要操作的数据库
/*
首先咱们要获取数据库中到底有多少数据,才能判断具体要分多少页,具体的公式就是
总数据数除以每页显示的条数,有余进一。
也就是说10/3=3.3333=4 有余数就要进一。
*/
$total=mysql_num_rows(mysql_query("select id from table")); //查询数据的总数,id是数据库中的一个自动赋值的字段
$pagenum=ceil($total/$num); //获得总页数
//假如传入的页数参数大于总页数,则显示错误信息
If($page$pagenum || $page == 0){
Echo "Error : Can Not Found The page .";
Exit;
}
$offset=($page-1)*$num; //获取limit的第一个参数的值,假如第一页则为(1-1)*10=0,第二页为(2-1)*10=10。
$info=mysql_query("select name from table limit $offset,$num"); //获取相应页数所需要显示的数据,name是数据里的一个字段
While($it=mysql_fetch_array($info)){
Echo $it['name']."
";
} //显示数据
For($i=1;$i=$pagenum;$i++){
$show=($i!=$page)?"$i":"$i";
Echo $show." ";
}
/*显示分页信息,假如是当页则显示粗体的数字,其余的页数则为超连接,假如当前为第三页则显示如下
1 2 3 4 5 6
*/
?
原理:
1.设定每页显示数
$num = 15;
2.获取数据总数计算总页数
3.通过get方法获取页码,无获取值页码为1,超过最大页数为最大页面数
$page = $_GET['page'] ? $_GET['page'] : 1;
4.通过页码来计算当前显示起始记录
$start = $page*$num-1;
5.通过sql语句查询
query("select * from tablename limit $start,$num");
然后输出就行了
页面上可以循环输出1~总页数 这些数字来实现翻页,也可以用其他方法
比较方便的方法是,可以去找一个分页类
?php
include("connection.php");
$perNumber=10; //每页显示的记录数
$page=$_GET['page']; //获得当前的页面值
$count=mysql_query("select count(*) from user"); //获得记录总数
$rs=mysql_fetch_array($count);
$totalNumber=$rs[0];
$totalPage=ceil($totalNumber/$perNumber); //计算出总页数
if (!isset($page)) {
$page=1;
} //如果没有值,则赋值1
$startCount=($page-1)*$perNumber; //分页开始,根据此方法计算出开始的记录
$result=mysql_query("select * from user limit $startCount,$perNumber"); //根据前面的计算出开始的记录和记录数
while ($row=mysql_fetch_array($result)) {
echo "user_id:".$row[0]."br";
echo "username:".$row[1]."br"; //显示数据库的内容
}
if ($page != 1) { //页数不等于1
?
a href="fenye.php?page=?php echo $page - 1;?"上一页/a !--显示上一页--
?php
}
for ($i=1;$i=$totalPage;$i++) { //循环显示出页面
?
a href="fenye.php?page=?php echo $i;?"?php echo $i ;?/a
?php
}
if ($page$totalPage) { //如果page小于总页数,显示下一页链接
?
a href="fenye.php?page=?php echo $page + 1;?"下一页/a
?php
}
?
================================
这个是很简单的..而且也写了注释..不知道合不合你的意..
这个网上太多相关的资料了 你自己动手搜搜
主要靠sql语句控制
如
第一个问题、你是不是已经会把结果整页显示了?我下面假释你已经会了,否则说不清楚。
第二个问题、你用的什么数据?我下面假释你用的MYSQL,其它数据库可能要可能稍微麻烦一点。
假释你的查询程序是query.php,现在要修改query.php程序,在前面增加一个检测$p_num参数值的语句,并用这个语句控制SQL查询语句,一般结构如下:
$p_size=20;//这个你可以自己定,表示没也显示多少条
$p_num+=0;//如果没有此参数表示显示第0页
$start_num=$p_num * $p_size;//计算从第几条查询结果中开始显示
$sql="select ... from ... where ...";//你自己的构造查询语句的代码
$sql.="limit $start_num , $p_size";//添加SQL语句取数据的限制,表示从$start_num开始取$p_size条查询结果
在查询结果显示完毕以后,需要显示各页的连接,也可以放在查询结果显示之前,代码如下:
//$num_tottal为总共满足条件的数据条数,$p_total为总共页数,你自己完成计算
$url="query.php?基本查询条件";
for ($i=0;$i=$p_total;$i++)
echo "a href='$urlp_num=$i'".($i+1)."/a";
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流