欢迎来到福编程网,本站提供各种互联网专业知识!

php,ajax实现分页

发布时间:2008-03-27 作者: 来源:转载
之前用php写好了个分页程序,今天试着结合ajax实现这个功能,成功了。哈哈,代码不难写,但写好之后测试发现出了,然后又调试了好段时间才正确。深感开发人员的时间大部分都是花在调试代码上的。
自己总结了些屁经验
1.用ajaxpost数据到后台页面后,接着要重新连接数据库,别以为用之前的session连接过就可以了
2.为了处理返回乱码的问题,我添加了header("Content-Type:text/html;charset=GB2312");就可以正常显示了,后来在firefox下检验,却提示我下载这个网页,上网搜了不少资料,得到一个模糊的认识就是网页代码有语法错误,firefox为了安全起见不会直接显示而是提示下载,我重新检查了刚才那条语句,发现自己多写了个“”,把它去掉后问题就解决了,哈哈,所以遇到这样的问题,好好检查一下htmltag吧,毕竟firefox可不像ie那样smart
3.最后说一句,做website的开发者,要负责任,别以为在ie下测试通过就万事大吉,毕竟不是所有人都用ie,还得要在别的浏览器下多做测试,这样才显示出你的专业水准

ajax脚本:
复制代码 代码如下:


调用:
复制代码 代码如下:

header("Content-Type:text/html;charset=GB2312");
$pagesize=10;
//echo$_POST['page'];
$result=mysql_query("Selectcount(DISTINCThotelname)FROM".TBL_HOTELS);
$myrow=mysql_fetch_array($result);
$numrows=$myrow[0];

$pages=intval($numrows/$pagesize);
if($numrows%$pagesize)
$pages++;
if(isset($_POST['page'])){
$page=intval($_POST['page']);
}
else{
//设置为第一页
$page=1;
}
$first=1;
$prev=$page-1;
$next=$page+1;
$last=$pages;
//计算记录偏移量
$offset=$pagesize*($page-1);
//读取指定记录数
$result=mysql_query("select`hotelname`,count(*)from".TBL_HOTELS."GROUPBY`hotelname`orderbyiddesclimit$offset,$pagesize");
$num=mysql_num_rows($result);
while($row=mysql_fetch_array($result,MYSQL_NUM)){
$hotelname[]=$row[0];
$countpeople[]=$row[1];
}
for($a=0;$a<$num;$a++)
{
//$result=mysql_query("selectcount(title)from".TBL_Comments."where`title`="".$title[$a].""");
//$row=mysql_fetch_row($result);
echo"n";
echo"n";
echo"n";
echo"n";
//rating_bar($title[$a],5);
echo"n";
echo"$hotelname[$a]n";
echo"n";
echo"n";
echo"n";
echo"n";
echo"推荐人数:($countpeople[$a])|n";
echo"平均分:(".$count."票)|评论数:()n";
echo"n";
}
echo"echo"border=0>";
echo"";
echo"";
echo"第".$page."页/总".$pages."页|总".$numrows."条|";
if($page>1)echo"首页|";
if($page>1)echo"上页|";
if($page<$pages)echo"下页|";
if($page<$pages)echo"尾页";
echo"转到第";
echo"

";

相关推荐