+ -
当前位置:首页 → 问答吧 → 刚刚改版完网站,发个分页函数

刚刚改版完网站,发个分页函数

时间:2008-10-22

来源:互联网

演示 http://hellophper.com/
下载 (4.5 KB)
2008-10-22 11:04

[php]//分页初始化
  if($_GET[pagenum] != "")
  {
     $start = 0;
     //echo "1111";
    // $_GET[pagenum] = 0;
    // $start=$row-1;
$start = $page * ($_GET[pagenum]-1);
  }else{
$start = 0;
  }[/php]

[php]
/*$pagenum首页分页变量 $db_table数据库$type where后面的查询数据相关联方式如:"and",">","or" $data查询的数据
$jumppage跳转的页面$search_type查询的数据是"="或者"like"$page_num function分页变量*/
function page($pagenum,$db_table,$type,$data,$jumppage,$search_type="like")
{
global $page;//每页显示的新闻条数
$mysql_link = new db();//链接数据库
$mysql_link->db_connect();
/*这里也可以用foreach用一个数组存储$value_show
然后用implode处理*/
if($type != "" && $data != "") {
//echo "$db_table";
$data = add_magic_quotes($data);
$fields = array_keys($data);
$data = implode(',',$data);
$data = explode(",", $data);
$fields = implode(',',$fields);
$fields = explode(",", $fields);
  $i = 0;//和$type有关
  foreach($fields as $value) {
    if($i !=0 )
   $value_show.=" $type ";
    if($search_type != "like")//其他判断条件 如:> < =
    {
    $value_show.="$value"." $search_type "."'$data[$i]'";
    }else{
   $value_show.="$value"." $search_type "."'%$data[$i]%'";
    }
   $i++;
  }
  //echo $value_show;
  $total = $mysql_link->num_rows("select * from $db_table where $value_show");
  //echo $total;
}else{
$total = $mysql_link->num_rows("select * from $db_table");
}

$pagenum<1 ? $page_initialize=1 : $page_initialize = $pagenum-1;//防止变成-1
if($page_initialize == 0)
$page_initialize=1;
$total_page_num=ceil($total/$page); //计算一共有多少页
/*显示第一页*/
if($pagenum == "" || $pagenum == 1){
/*在分页面显示对应的页数变色活动链接的颜色,我的是使用绿色*/
echo "<li><a href='$jumppage pagenum=1' class='page_num_hit'>1</a></li>";
}else{
echo "<li><a href='$jumppage pagenum=1'>1</a></li>";
}  
/*如果大于10页显示10页,如果少于有多少页显示多少页*/  
for($page_num=$page_initialize;$page_num<$page_initialize+10;$page_num++) {

  if($page_num < $total_page_num && $page_num >1){
  
//$page_num_show=$page_num+1;
if($page_num == $pagenum) {
  /*在分页面显示对应的页数变色活动链接的颜色,我的是使用绿色*/
echo "<li><a href='$jumppage pagenum=$page_num' class='page_num_hit'>$page_num</a></li>";
}else {
  echo "<li><a href='$jumppage pagenum=$page_num' >$page_num</a></li>";
}
  }
}
//显示最后一页的页数
echo "<li><a href='$jumppage pagenum=$total_page_num'>$total_page_num</a></li>";
return $total_page_num;
}
[/php]

作者: 沉默的抗议   发布时间: 2008-10-22

沙发@@@
还不错啊!

作者: fly1983   发布时间: 2008-10-22

好亮啊  晚上不用开显示器了  

作者: sheak   发布时间: 2008-10-22

貌似不错

作者: artherk   发布时间: 2008-10-22

原帖由 sheak 于 2008-10-22 14:32 发表
好亮啊  晚上不用开显示器了  
why??

作者: 沉默的抗议   发布时间: 2008-10-22

楼主可以把网站源码发给我吗?

[email protected]

作者: 追风1   发布时间: 2008-10-24

还没有准备开放源码

作者: 沉默的抗议   发布时间: 2008-10-24

  一般  还没我的好呢 多功能呢  可以支持MYSQL MSSQL数据库

作者: 0hudu   发布时间: 2008-10-28

楼主开放源码吧,呵呵~

作者: cybmm   发布时间: 2008-11-24

PL啊  学习!

作者: 0hudu   发布时间: 2008-11-24

原帖由 追风1 于 2008-12-19 09:31 发表
楼主开放源码吧,呵呵~
帖子中就是分页的源码

作者: 追风1   发布时间: 2008-12-19

作者: liumingchen   发布时间: 2008-12-20

作者: 沉默的抗议   发布时间: 2008-12-20

不过实际还得自己写自己合适的比较

作者: lincon017   发布时间: 2008-12-30