您的位置:首页 > 编程语言 > PHP开发

php+ajax实现分页

2016-07-26 18:00 549 查看
ajaxpage.php【这里是数据展示页面的代码】:

<meta charset=’utf-8′>
<script src=”http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js” type=”text/javascript”/></script>
<script type=”text/javascript”>
//获取当前url地址,主要是获取page参数,为了不实现跳转在分页中采用了锚点连接的方式
var url=location.href;
uarr=url.indexOf(‘#’);
npage=url.substr(uarr+6);
if(!npage)npage=1;
jQuery(function(){
 $.ajax({
     type: “POST”,
     url: “ajax.php”,
     dataType:’json’,//由于ajax返回值是数组,所以在php脚本中经过json编码
     data: “page=”+npage,
     success: function(msg){
     $(‘#post_result’).html(msg.page_content);
     $(‘#navipage’).html(msg.page_list);
     }
  });
})

function url_go(page){
 $.ajax({
     type: “POST”,
     url: “ajax.php”,
     dataType:’json’,
     data: “page=”+page,
     success: function(msg){
     $(‘#post_result’).html(msg.page_content);
     $(‘#navipage’).html(msg.page_list);
     }
  });
 
}

 

</script>

<div id=post_result>
</div>
<div id=navipage>
</div>

————————————————————-

ajax.php【这里是生成数据和分页的代码】:

<?php
$host=”localhost”;
$user=”root”;
$pwd=”root”;
$dbname=”test”;
$link = mysql_connect($host, $user, $pwd)or die(“Could not connect: ” . mysql_error());
mysql_select_db($dbname, $link) or die (‘Can\’t use test : ‘ . mysql_error());
mysql_query(“SET NAMES ‘utf8′”);
mysql_query(“SET CHARACTER_SET_CLIENT=utf8″);
mysql_query(“SET CHARACTER_SET_RESULTS=utf8″);
//分页设置
$page=$_REQUEST['page']?$_REQUEST['page']:1;
//设置每页显示多好条记录
$page_size=2;
//设置limit偏量
$off=($page-1)*$page_size;
//获取总记录数
$sql_all=”select * from user order by id desc”;
$all_res=mysql_query($sql_all);
$total_all=mysql_num_rows($all_res);
//计算页面总数,注意键名,当然你也可以使用数字下标
$page_num=ceil($total_all/$page_size);
//读取当前页记录数
$sql_page=”select * from user order by id desc limit $off,$page_size”;
$page_res=mysql_query($sql_page);

while ($arr=mysql_fetch_array($page_res)){
 $ajax_arr['page_content'].=’id:’.$arr['id'].’<br>user:’.$arr['user'].’<br><hr>’;
}

for($i=1;$i<=$page_num;$i++){
 if($i==$page){
 $ajax_arr['page_list'].=’<a href=?#page=’.$i.’ onclick=”url_go(‘.$i.’)”>[<font color=red>'.$i.'</font>]</a>’;
 }else{
 $ajax_arr['page_list'].=’<a href=?#page=’.$i.’ onclick=”url_go(‘.$i.’)”>['.$i.']</a>’; 
 }
}
//对数组进行json编码,否则ajax无法获取数组形式的返回值
echo json_encode($ajax_arr);

?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: