当前位置:Gxlcms > PHP教程 > PHP自练项目之数字分页效果

PHP自练项目之数字分页效果

时间:2021-07-01 10:21:17 帮助过:3人阅读

学习要点:
1.LIMIT 用法
2.各种参数
3.超链接调用

第一:先在文件中设置数字分页模块;我的文件是(blog.php)

//分页模块$_page = $_GET['page'];
$_pagesize = 10;
$_pagenum = ($_page - 1) * $_pagesize;
//首页要得到所有的数据总和$_num=mysql_num_rows(_query("SELECT tg_id FROM tg_user"));
$_pageabsolute=$_num / $_pagesize;

要注意的是在数据库中取集的时候

//我们必须每次重新读取结果集,而不是从新去执行SQL语句。
$_result = _query("SELECT tg_username,tg_sex,tg_face FROM tg_user ORDER BY tg_reg_time DESC LIMIT $_pagenum,$_pagesize");
设置分页循环的效果


    
    for($i=0;$i<$_pageabsolute;$i++){ if ($_page == ($i+1)) { echo '
  • $i+1).'">'.($i+1).'
  • '; }else{ echo '
  • $i+1).'">'.($i+1).'
  • '; } } ?>

相对应的CSS

#page_num {
	height:20px;
	clear:both;
	padding:10px 0;
	position:relative;
}
#page_num ul {
	position:absolute;
	right:30px;
	height:20px;
}
#page_num ul li {
	float:left;
	width:26px;
	height:20px;
}
#page_num ul li a {
	display:block;
	width:20px;
	height:20px;
	line-height:20px;
	border:1px solid #333;
	text-align:center;
	text-decoration:none;
}
#page_num ul li a:hover,#page_num ul li a.selected {
	background:#666;
	font-weight:bold;
	color:#fff;
}

在其中可能会由于编码出现容错误,解决的方法是

// 分页模块if (isset ( $_GET ['page'] )) {
    // 在数据不再数据范围内出错的解决方法$_page = $_GET['page'];
    // 是否为空,是否小于0,是否不是数字。//如果其中有一个是,那么就=1if (empty ( $_page )||$_page < 0 || !is_numeric( $_page )) {
        $_page = 1;
    } else {
        $_page = intval ( $_page ); // 如果是数字,但是小数,那么就$_page = intval($_page);转换成整数    }
} else {
    $_page = 1;
}
$_pagesize = 10;
$_num = _num_rows( _query ( "SELECT tg_id FROM tg_user" ) );
if ($_num==0) {
    $_pageabsolute=1;
}else{
    $_pageabsolute=ceil($_num/$_pagesize);
}
//当页码大于总页码的时候,就会返回到总页码的最后一页if ($_page>$_pageabsolute) {
    $_page=$_pageabsolute;
}
$_pagenum = ($_page - 1) * $_pagesize;

以上就介绍了PHP自练项目之数字分页效果,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

人气教程排行