|
PHP复制代码 class Seperatepage_model extends CI_Model {
function __construct ()
{
parent ::__construct ();
$this->load->database();
}
/*
* 分页类,参数形式
* array(
* 'sqlstate'=>'' //数据库查询语句
* 'begin'=>'' //开始的数目
* 'step'=>'' //跳跃的步长
* );
* */
function seperatepage ($value=array('sqlstate'=>'','begin'=>'0','step'=>'10','uri'=>'')){
if(is_array($value)){
$state='';
// 取得总数目
$allres=$this->db->query($value['sqlstate']);
$num=$allres->num_rows;
// 向上取整获得总页面
$numpage=ceil($num/$value['step']);
// 当前页面,以0开始,显示时页面为+1
$nowpage=($value['begin']/$value['step']);
foreach($value as $key => $val){
switch($key){
case 'sqlstate':$state.=$val;break;
case 'begin':$state.=' limit '.$val;break;
case 'step':$state.=' , '.$val;break;
}
}
$query=$this->db->query($state);
$result=$query->result_array();
// 返回结果
$page['result']=$result;
// 翻页字符串
$spage='<a href="'.site_url ('admin/admin_news/showtitle/0/'.$value['step']).'">首页</a> ';
$spage.='总第:'.($nowpage+1).'/'.$numpage.'页 ';
if(($nowpage-1)<0){
$uppage=0;
}else{
$uppage=$nowpage-1;
}
$spage.='<a href="'.site_url ('admin/admin_news/showtitle/'.$uppage*$value['step'].'/'.$value['step']).'">上一页 </a> ';
for($i=0;$i<5;$i++){
$setpage=$nowpage+$i+1;
//if($setpage<=$numpage){
if($nowpage+1<=3){
$spage.='<a href="'.site_url ('admin/admin_news/showtitle/'.$i*$value['step'].'/'.$value['step']).'"> '.$this->add0($i+1).'</a> ';
}else if($nowpage+3<=$numpage){
$setpage2=$setpage-2;
$spage.='<a href="'.site_url ('admin/admin_news/showtitle/'.($setpage-3)*$value['step'].'/'.$value['step']).'"> '.$this->add0($setpage2).'</a> ';
}else if($nowpage+3>$numpage){
$spage.='<a href="'.site_url ('admin/admin_news/showtitle/'.($numpage+$i-5)*$value['step'].'/'.$value['step']).'"> '.$this->add0($numpage+$i-4).'</a> ';
}
//}
}
if(($nowpage+1>=$numpage-1)){
$lastpage=$numpage-1;
}else{
$lastpage=$nowpage+1;
}
$spage.=' <a href="'.site_url ('admin/admin_news/showtitle/'.$lastpage*$value['step'].'/'.$value['step']).'">下一页 </a>';
$spage.=' <a href="'.site_url ('admin/admin_news/showtitle/'.($numpage-1)*$value['step'].'/'.$value['step']).'">尾页 </a>';
// 返回翻页字符串
$page['spage']=$spage;
return $page;
}
}
/*不到十补0
* */
function add0 ($value){
if($value<10){
return '0'.$value;
}else{
return $value;
}
}
} 复制代码 |
评分
-
查看全部评分
|