php,ajax实现分页


Posted in PHP onMarch 27, 2008

自己总结了些屁经验
1.用ajax post数据到后台页面后,接着要重新连接数据库,别以为用之前的session连接过就可以了
2.为了处理返回乱码的问题,我添加了header("Content-Type:text/html;charset=GB2312");就可以正常显示了,后来在firefox下检验,却提示我下载这个网页,上网搜了不少资料,得到一个模糊的认识就是网页代码有语法错误,firefox为了安全起见不会直接显示而是提示下载,我重新检查了刚才那条语句,发现自己多写了个“\”,把它去掉后问题就解决了,哈哈,所以遇到这样的问题,好好检查一下html tag吧,毕竟firefox可不像ie那样smart
3.最后说一句,做web site的开发者,要负责任,别以为在ie下测试通过就万事大吉,毕竟不是所有人都用ie,还得要在别的浏览器下多做测试,这样才显示出你的专业水准

ajax脚本: 

<script>  
function viewpage(p){  
if(window.XMLHttpRequest){  
var xmlReq = new XMLHttpRequest();  
} else if(window.ActiveXObject) {  
var xmlReq = new ActiveXObject('Microsoft.XMLHTTP');  
}  
var formData = "page="+p;  
xmlReq.onreadystatechange = function(){  
if(xmlReq.readyState == 4){  
document.getElementById('content2').innerHTML = xmlReq.responseText;  
}  
}  
xmlReq.open("post", "hotel_list.php", true);  
xmlReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");  
xmlReq.send(formData);  
return false;  
}  
</script> 

调用:
 
header("Content-Type:text/html;charset=GB2312");  
$pagesize=10;  
//echo $_POST['page'];  
$result = mysql_query("Select count(DISTINCT hotelname) 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." GROUP BY `hotelname` order by id desc limit $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("select count(title) from " . TBL_Comments ." where `title`=\"".$title[$a]."\"");  
//$row = mysql_fetch_row($result);  
echo "<TABLE style=\"MARGIN-BOTTOM: 20px\" cellSpacing=0 cellPadding=0 width=100% border=0>\n";  
echo "<TBODY>\n";  
echo "<TR>\n";  
echo "<TD style=\"PADDING-TOP: 5px\" vAlign=top align=left width=80>\n";  
//rating_bar($title[$a],5);  
echo "</TD>\n";  
echo "<TD style=\"PADDING-TOP: 5px\" align=left width=100%><A title=$hotelname[$a] style=\"FONT-SIZE: 14px\" href=#>$hotelname[$a]</A>\n";  
echo "</TD></TR>\n";  
echo " <TR>\n";  
echo "<TD></TD>\n";  
echo "<TD style=\"PADDING-LEFT: 0px\">\n";  
echo "<IMG src=\"images/comment.gif\" border=0>  推荐人数:($countpeople[$a]) |\n";  
echo "<SPAN>平均分:<STRONG></STRONG> (".$count."票) | 评论数:()</SPAN>\n";  
echo "</TD></TR></TBODY></TABLE>\n";  
}  
echo "<TABLE style=\"MARGIN-TOP: 30px\" cellSpacing=0 cellPadding=0 width=\"100%\"";  
echo "border=0>";  
echo "<TBODY><TR><TD colSpan=3 height=20>";  
echo "<DIV align=center>";  
echo "<P align=left><FONT color=red>第".$page."页/总".$pages."页 | 总".$numrows."条</FONT> | ";  
if ($page>1) echo "<a onclick=\"viewpage(".$first.")\" href='#'>首页</a> | ";  
if ($page>1) echo "<a onclick=\"viewpage(".$prev.")\" href='#'>上页</a> | ";  
if ($page<$pages) echo "<a onclick=\"viewpage(".$next.")\" href='#'>下页</a> | ";  
if ($page<$pages) echo "<a onclick=\"viewpage(".$last.")\" href='#'>尾页</a>";  
echo "转到第 <INPUT maxLength=3 size=3 value=1 name=goto_page> 页 <INPUT hideFocus onclick=\"viewpage(document.all.goto_page.value)\" type=button value=Go name=cmd_goto>";  
echo "</P></DIV></TD></TR></TBODY></TABLE>";
PHP 相关文章推荐
用PHP动态创建Flash动画
Oct 09 PHP
PHP中MVC模式的模板引擎开发经验分享
Mar 23 PHP
PHP中去掉字符串首尾空格的方法
May 19 PHP
php安装xdebug/php安装pear/phpunit详解步骤(图)
Dec 22 PHP
jQuery+PHP实现的掷色子抽奖游戏实例
Jan 04 PHP
54个提高PHP程序运行效率的方法
Jul 19 PHP
ECSHOP在PHP5.5及高版本上报错的解决方法
Aug 31 PHP
解决PHP里大量数据循环时内存耗尽的方法
Oct 10 PHP
讲解WordPress开发中一些常用的debug技巧
Dec 18 PHP
php实现页面纯静态的实例代码
Jun 21 PHP
详解php伪造Referer请求反盗链资源
Jan 24 PHP
Laravel 错误提示本地化的实现
Oct 22 PHP
PHP 5.0对象模型深度探索之类的静态成员
Mar 27 #PHP
PHP 5.0对象模型深度探索之对象复制
Mar 27 #PHP
PHP 5.0对象模型深度探索之属性和方法
Mar 27 #PHP
php简单静态页生成过程
Mar 27 #PHP
优化PHP代码的53条建议
Mar 27 #PHP
PHP连接access数据库
Mar 27 #PHP
某大型网络公司应聘时的笔试题目附答案
Mar 27 #PHP
You might like
php文本转图片自动换行的方法
2013/03/13 PHP
解析thinkphp中的M()与D()方法的区别
2013/06/22 PHP
PHP 二维数组根据某个字段排序的具体实现
2014/06/03 PHP
PHP判断是否是微信打开还是浏览器打开的方法
2019/02/27 PHP
Yii 使用intervention/image拓展实现图像处理功能
2019/06/22 PHP
PHP7变量处理机制修改
2021/03/09 PHP
extJs 文本框后面加上说明文字+下拉列表选中值后触发事件
2009/11/27 Javascript
JavaScript插件化开发教程 (一)
2015/01/27 Javascript
TypeScript 学习笔记之基本类型
2015/06/19 Javascript
javascript实现简易计算器的代码
2016/05/31 Javascript
AngularJS使用ng-repeat指令实现下拉框
2016/08/23 Javascript
JS判断浏览器是否安装flash插件的简单方法
2016/09/13 Javascript
浅谈Angular2 ng-content 指令在组件中嵌入内容
2017/08/18 Javascript
Node.js学习之查询字符串解析querystring详解
2017/09/28 Javascript
Bootstrap 时间日历插件bootstrap-datetimepicker配置与应用小结
2019/05/28 Javascript
[47:31]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第一场 12.12
2020/12/16 DOTA
python学习之编写查询ip程序
2016/02/27 Python
Python编码类型转换方法详解
2016/07/01 Python
对Python进行数据分析_关于Package的安装问题
2017/05/22 Python
python3+PyQt5使用数据库窗口视图
2018/04/24 Python
对python GUI实现完美进度条的示例详解
2018/12/13 Python
Python3.5以上版本lxml导入etree报错的解决方案
2019/06/26 Python
在Python中COM口的调用方法
2019/07/03 Python
python3 中使用urllib问题以及urllib详解
2020/08/03 Python
Python连接mysql数据库及简单增删改查操作示例代码
2020/08/03 Python
使用python把xmind转换成excel测试用例的实现代码
2020/10/12 Python
pandas按照列的值排序(某一列或者多列)
2020/12/13 Python
定义css设备类型-Media Queries图表简介及使用方法
2013/01/21 HTML / CSS
美国女士泳装店:Swimsuits For All
2017/03/02 全球购物
公务员总结性个人自我评价
2013/12/05 职场文书
校园学雷锋活动月总结
2014/03/09 职场文书
开展批评与自我批评发言材料
2014/05/15 职场文书
英语课外活动总结
2014/08/27 职场文书
四风问题党员个人整改措施
2014/10/27 职场文书
2014年安全生产工作总结
2014/11/13 职场文书
MongoDB数据库部署环境准备及使用介绍
2022/03/21 MongoDB