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 相关文章推荐
一个PHP操作Access类(PHP+ODBC+Access)
Jan 02 PHP
PHP操作MongoDB时的整数问题及对策说明
May 02 PHP
PHP简洁函数(PHP简单明了函数语法)
Jun 10 PHP
常用PHP框架功能对照表
Oct 23 PHP
php多个文件及图片上传实例详解
Nov 10 PHP
学习php设计模式 php实现桥梁模式(bridge)
Dec 07 PHP
WordPress的主题编写中获取头部模板和底部模板
Dec 28 PHP
既简单又安全的PHP验证码 附调用方法
Jun 02 PHP
Yii 使用intervention/image拓展实现图像处理功能
Jun 22 PHP
thinkphp框架使用JWTtoken的方法详解
Oct 10 PHP
php装饰者模式简单应用案例分析
Oct 23 PHP
PHP的垃圾回收机制代码实例讲解
Feb 27 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 强制下载文件代码
2010/10/24 PHP
WampServer搭建php环境时遇到的问题汇总
2015/07/23 PHP
PHP7.0安装笔记整理
2015/08/28 PHP
laravel dingo API返回自定义错误信息的实例
2019/09/29 PHP
js 鼠标点击事件及其它捕获
2009/06/04 Javascript
ASP 过滤数组重复数据函数(加强版)
2010/05/31 Javascript
16个最流行的JavaScript框架[推荐]
2011/05/29 Javascript
innerHTML与jquery里的html()区别介绍
2012/10/12 Javascript
js倒计时小程序
2013/11/05 Javascript
jQuery实现鼠标经过图片预览大图效果
2014/04/10 Javascript
href下载文件根据id取url并下载
2014/05/28 Javascript
JS中attr和prop属性的区别以及优先选择示例介绍
2014/06/30 Javascript
JavaScript设计模式之单例模式实例
2014/09/24 Javascript
JavaScript中的方法调用详细介绍
2014/12/30 Javascript
JS使用ajax方法获取指定url的head信息中指定字段值的方法
2015/03/24 Javascript
js代码实现随机颜色的小方块
2015/07/30 Javascript
Easyui和zTree两种方式分别实现树形下拉框
2017/08/04 Javascript
JS实现简易换图时钟功能分析
2018/01/04 Javascript
在ES5与ES6环境下处理函数默认参数的实现方法
2018/05/13 Javascript
vue.js实现回到顶部动画效果
2019/07/31 Javascript
[01:03:36]DOTA2-DPC中国联赛 正赛 VG vs Magma BO3 第二场 1月26日
2021/03/11 DOTA
使用python实现拉钩网上的FizzBuzzWhizz问题示例
2014/05/05 Python
一篇文章入门Python生态系统(Python新手入门指导)
2015/12/11 Python
python 排序算法总结及实例详解
2016/09/28 Python
基于循环神经网络(RNN)的古诗生成器
2018/03/26 Python
python实现淘宝秒杀脚本
2020/06/23 Python
情人节快乐! python绘制漂亮玫瑰
2020/08/18 Python
python日志模块logbook使用方法
2019/09/19 Python
python 实现按对象传值
2019/12/26 Python
Python变量作用域LEGB用法解析
2020/02/04 Python
Python3.7在anaconda里面使用IDLE编译器的步骤详解
2020/04/29 Python
英国领先的鞋类零售商和顶级品牌的官方零售商:Wynsors
2020/02/17 全球购物
Linux管理员面试经常问道的相关命令
2013/04/29 面试题
幸福家庭标语
2014/06/27 职场文书
2015年暑期社会实践报告
2015/07/13 职场文书
vue递归实现树形组件
2022/07/15 Vue.js