|
楼主 |
发表于 2010-9-15 17:16:31
|
显示全部楼层
本帖最后由 xiasix 于 2010-9-15 17:19 编辑
额 搞了一下午 搞出来了 贴下代码,count那块没走 model 直接控制器里写了
controller:
$page=$this->uri->segment(3)?$this->uri->segment(3):1; //这句就是获取中的page的值,假如不存在page,那么页数就是1。
$num=20;
$data['results'] = $this->adduser->ShowPlan3();
$total=$this->db->count_all('plan');
$url=base_url()."index.php/user/checklogin3";
$pagenum=ceil($total/$num); //获得总页数,也是最后一页
$page=min($pagenum,$page);//获得首页
$prepg=$page-1;//上一页
$nextpg=($page==$pagenum ? 0 : $page+1);//下一页
$offset=($page-1)*$num; //获取limit的第一个参数的值,假如第一页则为(1-1)*10=0,第二页为(2-1)*10=10。
$data['pagenav']="<ul>";
//开始分页导航条代码:
$data['pagenav'].="<li>显示第 <B>".($total?($offset+1):0)."</B>-<B>".min($offset+10,$total)."</B> 条记录</li><li>共 $total 条记录 </li>";
//如果只有一页则跳出函数:
if($pagenum<=1) $pagenum=10;
$data['pagenav'].="<li> <a href=javascript:dopage('result','$url/1');>首页</a></li> ";
if($prepg) $data['pagenav'].="<li> <a href=javascript:dopage('result','$url/$prepg');>前页</a></li> "; else $data['pagenav'].=" <li>前页</li> ";
if($nextpg) $data['pagenav'].="<li><a href=javascript:dopage('result','$url/$nextpg');>后页</a> </li>"; else $data['pagenav'].=" <li>后页</li> ";
$data['pagenav'].="<li> <a href=javascript:dopage('result','$url/$pagenum');>尾页</a></li> ";
$data['pagenav'].="<li>第 $page 页</li><li>共 $pagenum 页</li></ul>";
//假如传入的页数参数大于总页数,则显示错误信息
if($page>$pagenum){
echo "1111111 ".$page;
exit;
}
$data['results'] = $this->adduser->ShowPlan($num,$offset);
$this->load->view('home',$data);
views:
<div id="fenye"><?php echo $pagenav; ?> </div>
ajaxjs:
var http_request=false;
function send_request(url){//初始化,指定处理函数,发送请求的函数
http_request=false;
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest){//Mozilla浏览器
http_request=new XMLHttpRequest();
if(http_request.overrideMimeType){//设置MIME类别
http_request.overrideMimeType("text/xml");
}
}
else if(window.ActiveXObject){//IE浏览器
try{
http_request=new ActiveXObject("Msxml2.XMLHttp");
}catch(e){
try{
http_request=new ActiveXobject("Microsoft.XMLHttp");
}catch(e){}
}
}
if(!http_request){//异常,创建对象实例失败
window.alert("创建XMLHttp对象失败!");
return false;
}
http_request.onreadystatechange=processrequest;
//确定发送请求方式,URL,及是否同步执行下段代码
http_request.open("GET",url,true);
http_request.send(null);
}
//处理返回信息的函数
function processrequest(){
if(http_request.readyState==4){//判断对象状态
if(http_request.status==200){//信息已成功返回,开始处理信息
document.getElementById(reobj).innerHTML=http_request.responseText;
}
else{//页面不正常
alert("您所请求的页面不正常!");
}
}
}
function dopage(obj,url){
document.getElementById(obj).innerHTML="<font color='green' font-size='12'>正在读取数据...</font>";
send_request(url);
reobj=obj;
} |
|