ajax实现无刷新分页(php)


Posted in PHP onJuly 18, 2010
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<title>投票结果</title> 
<meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
<script type="text/javascript"> 
function GetXmlHttpObject() 
{ 
var xmlHttp=null; 
try 
{ 
// Firefox, Opera 8.0+, Safari 
xmlHttp=new XMLHttpRequest(); 
} 
catch (e) 
{ 
// Internet Explorer 
try 
{ 
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); 
} 
catch (e) 
{ 
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); 
} 
} 
return xmlHttp; 
} 
function checkajax(){ 
xmlHttp=GetXmlHttpObject() 
if (xmlHttp==null) 
{ 
alert ("您的浏览器不支持AJAX!"); 
return ; 
}else 
{ 
return xmlHttp; 
} 
} 
function preshow(){ 
ajaxobj = checkajax(); 
var url = "page.php?page=1"; 
ajaxobj.onreadystatechange=stateChanged; 
ajaxobj.open("GET",url,true); 
ajaxobj.send(null); 
} 
function showHint1(str) 
{ 
ajaxobj = checkajax(); 
document.getElementById("msg").innerHTML="正在读取数据……"; 
var url = str; 
ajaxobj.onreadystatechange=stateChanged; 
ajaxobj.open("GET",url,true); 
ajaxobj.send(null); 
} 
function showHint2(str) 
{ 
ajaxobj=checkajax(); 
document.getElementById("msg").innerHTML="正在读取数据……"; 
var url = str; 
ajaxobj.onreadystatechange=stateChanged; 
ajaxobj.open("GET",url,true); 
ajaxobj.send(null); 
} 
function showHint3(str) 
{ 
ajaxobj=checkajax(); 
document.getElementById("msg").innerHTML="正在读取数据……"; 
var url = str; 
ajaxobj.onreadystatechange=stateChanged; 
ajaxobj.open("GET",url,true); 
ajaxobj.send(null); 
} 
function showHint4(str) 
{document.getElementById("msg").style.display="none"; 
ajaxobj=checkajax(); 
document.getElementById("msg").innerHTML="正在读取数据……"; 
var url = str; 
ajaxobj.onreadystatechange=stateChanged; 
ajaxobj.open("GET",url,true); 
ajaxobj.send(null); 
} 
function stateChanged() 
{ 
if (xmlHttp.readyState==4) 
{ 
document.getElementById("message").innerHTML=xmlHttp.responseText; 
} 
} 
</script> 
</head> 
<body onload="preshow()"> 
<div id="wrapper"> 
<h4>用户留言如下:</h4> 
<div id="message"> 
</div> 
</div> 
</body> 
</html>

<?php 
$link = mysql_connect('localhost', 'root', '') or die(mysql_error()); 
mysql_select_db('vote', $link) or die(mysql_error()); 
mysql_query("set names utf8"); 
$num = 3; 
$url = "page.php"; 
$con = "<ul id='msg'>"; 
$page = (isset($_REQUEST['page'])) ? $_REQUEST['page'] : 1; 
$offset = ($page - 1) * $num; 
$result = mysql_query("SELECT COUNT(*) FROM client"); 
$total = mysql_fetch_row($result); 
$total = $total[0]; 
$pagenum = ceil($total / $num); 
$page = min($pagenum, $page); //获得首页 
$prepg = $page - 1; //上一页 
if ($prepg <= 1) 
$prepg = 1; 
$nextpg = ($page == $pagenum ? 1 : $page + 1); //下一页 
//如果只有一页则跳出函数: 
if ($pagenum <= 1) 
return false; 
$sql = "SELECT `name`,`content` FROM `client` LIMIT " . $offset . "," . $num; 
$res = mysql_query($sql); 
while ($content = mysql_fetch_row($res)) { 
$con .= "<li><span>$content[0]:</span>  $content[1]</li>"; 
} 
$con .= "</ul>"; 
$con .= <<< PAGE 
<p id="page"><a href="#" id="first" onclick="showHint1('$url?page=1')">首页</a>|<a href="#" id="pre" onclick="showHint2('$url?page=$prepg')">上一页</a>|<a href="#" id="next" onclick="showHint3('$url?page=$nextpg')">下一页</a>|<a href="#" id="last" onclick="showHint4('$url?page=$pagenum')">尾页</a></p> 
PAGE; 
echo $con; 
?>
PHP 相关文章推荐
不用数据库的多用户文件自由上传投票系统(1)
Oct 09 PHP
用PHP实现的生成静态HTML速度快类库
Mar 31 PHP
常用的php对象类型判断
Aug 27 PHP
PHP 存储文本换行实现方法
Jan 05 PHP
通过JavaScript或PHP检测Android设备的代码
Mar 09 PHP
简单的方法让你的后台登录更加安全(php中加session验证)
Aug 22 PHP
PHP快速按行读取CSV大文件的封装类分享(也适用于其它超大文本文件)
Apr 10 PHP
php出现内存位置访问无效错误问题解决方法
Aug 16 PHP
Yii2框架RESTful API 格式化响应,授权认证和速率限制三部分详解
Nov 10 PHP
thinkphp中的多表关联查询的实例详解
Oct 12 PHP
PHP设计模式之适配器模式定义与用法详解
Apr 03 PHP
Laravel 读取 config 下的数据方法
Oct 13 PHP
php将会员数据导入到ucenter的代码
Jul 18 #PHP
php 无限级数据JSON格式及JS解析
Jul 17 #PHP
php下使用strpos需要注意 === 运算符
Jul 17 #PHP
按上下级层次关系输出内容的PHP代码
Jul 17 #PHP
PHP开发负载均衡指南
Jul 17 #PHP
PHP无敌近乎加密方式!
Jul 17 #PHP
生成ubuntu自动切换壁纸xml文件的php代码
Jul 17 #PHP
You might like
php 将excel导入mysql
2009/11/09 PHP
Codeigniter实现处理用户登录验证后的URL跳转
2014/06/12 PHP
php 实现进制相互转换
2016/04/07 PHP
PHP使用mysql与mysqli连接Mysql数据库用法示例
2016/07/07 PHP
[原创]php正则删除html代码中class样式属性的方法
2017/05/24 PHP
innertext , insertadjacentelement , insertadjacenthtml , insertadjacenttext 等区别
2007/06/29 Javascript
javascript之解决IE下不渲染的bug
2007/06/29 Javascript
LBS blog sql注射漏洞[All version]-官方已有补丁
2007/08/26 Javascript
基于jquery的tab切换 js原理
2010/04/01 Javascript
vue 里面使用axios 和封装的示例代码
2017/09/01 Javascript
jQuery中的for循环var与let的区别
2018/04/21 jQuery
Vue2实时监听表单变化的示例讲解
2018/08/30 Javascript
Vue.js中对css的操作(修改)具体方式详解
2018/10/30 Javascript
JS中注入eval, Function等系统函数截获动态代码
2019/04/03 Javascript
基于JS实现父组件的请求服务过程解析
2019/10/14 Javascript
小程序采集录音并上传到后台
2019/11/22 Javascript
微信小程序顶部导航栏可滑动并选中放大
2019/12/05 Javascript
Python对两个有序列表进行合并和排序的例子
2014/06/13 Python
python编程开发之类型转换convert实例分析
2015/11/13 Python
python实现K最近邻算法
2018/01/29 Python
tensorflow建立一个简单的神经网络的方法
2018/02/10 Python
通过pykafka接收Kafka消息队列的方法
2018/12/27 Python
对python 树状嵌套结构的实现思路详解
2019/08/09 Python
django执行数据库查询之后实现返回的结果集转json
2020/03/31 Python
python 实现弹球游戏的示例代码
2020/11/17 Python
环境工程求职简历的自我评价范文
2013/10/24 职场文书
两只小狮子教学反思
2014/02/05 职场文书
小学语文教学经验交流材料
2014/06/02 职场文书
运动会开幕词
2015/01/28 职场文书
拾金不昧通报表扬范文
2015/05/05 职场文书
研究生论文答辩开场白
2015/05/27 职场文书
初一语文教学反思
2016/03/03 职场文书
2019请假条的基本格式及范文!
2019/07/05 职场文书
Java多条件判断场景中规则执行器的设计
2021/06/26 Java/Android
ElementUI实现el-form表单重置功能按钮
2021/07/21 Javascript
springboot+zookeeper实现分布式锁
2022/03/21 Java/Android