本文实例讲述了PHP+ajax分页实现方法。分享给大家供大家参考,具体如下:
HTML代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
<html>
<head>
<meta http-equiv= "Content-Language" content= "en" />
<meta name= "GENERATOR" content= "PHPEclipse 1.0" />
<meta http-equiv= "Content-Type" content= "text/html; charset=GB2312" />
<title>title</title>
<mce:script type= 'text/javascript' ><!--
var http_request= false ;
function send_request(url){ //初始化,指定处理函数,发送请求的函数
http_request= false ;
//开始初始化XMLHttpRequest对象
if (window.XMLHttpRequest){ //Mozilla浏览器
http_request= new XMLHttpRequest();
if (http_request.overrideMimeType){ //设置MIME类别
http_request.overrideMimeType( "text/xml" );
}
}
else if (window.ActiveXObject){ //IE浏览器
try {
http_request= new ActiveXObject( "Msxml2.XMLHttp" );
} catch (e){
try {
http_request= new ActiveXobject( "Microsoft.XMLHttp" );
} catch (e){}
}
}
if (!http_request){ //异常,创建对象实例失败
window.alert( "创建XMLHttp对象失败!" );
return false ;
}
http_request.open( "GET" ,url, true );
http_request.onreadystatechange=processrequest;
//确定发送请求方式,URL,及是否同步执行下段代码
http_request.send( null );
}
//处理返回信息的函数
function processrequest(){
if (http_request.readyState==4){ //判断对象状态
if (http_request.status==200){ //信息已成功返回,开始处理信息
document.getElementById( 'result' ).innerHTML=http_request.responseText;
}
else {
//页面不正常
alert( "您所请求的页面不正常!" );
}
}
}
function dopage(url)
{
document.getElementById( 'result' ).innerHTML= "正在读取数据..." ;
send_request(url);
}
// --></mce:script>
</head>
<body bgcolor= "#FFFFFF" text= "#000000" link= "#FF9966" vlink= "#FF9966" alink= "#FFCC99" >
<div id= 'result' >
</div>
</body>
</html>
|
php代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
header( "Content-type: text/html;charset=GBK" ); //
$link =mysql_connect( 'localhost' , 'root' , 'root' );
mysql_select_db( 'test' );
mysql_query( "SET NAMES 'GBK'" );
$num =5; //每页显示5条
$sql = "select * from article " ;
//总共有多少记录
$resultt =mysql_query( $sql );
//获取数据库总记录数
$total =mysql_num_rows( $result );
echo $total ;
//总共有多少页
$pagecount = $total / $num ;
//获取当前页
$currentPage =isset( $_GET [ 'page' ])? intval ( $_GET [ 'page' ]):1;
//查询条数
$offset =( $currentPage -1)* $num ;
//下一页
$nexpage =( $currentPage == $pagecount ?0: $currentPage +1);
//上一页
$prepg = $currentPage -1;
$url = 'ajax.php' ;
//根据条数查询信息
$strSQL = "select * from article limit $offset,$num" ;
$pagecontrol = "当前第" . $currentPage . "页" ;
$pagecontrol .= "共" . $pagecount . "页" ;
$pagecontrol .= "<a href=" javascript:dopage( " mce_href=" javascript:dopage( "'$url?page=1')>首 页</a> " ;
if ( $prepg ) $pagecontrol .= " <a href=" javascript:dopage( " mce_href=" javascript:dopage( "'$url?page=$prepg');>上一页</a> " ; else $pagecontrol .= " 上一页 " ;
if ( $nexpage ) $pagecontrol .= "<a href=" javascript:dopage( " mce_href=" javascript:dopage( "'$url?page=$nexpage');>下一页</a>" ; else $pagecontrol .= "下一页" ;
$pagecontrol .= "<a href=" javascript:dopage( " mce_href=" javascript:dopage( "'$url?page=$pagecount')>尾 页</a>" ;
$result1 =mysql_query( $strSQL );
echo "<table border=1 width=100%>" ;
echo "<tr>" ;
echo "<td>编 号</td><td>标 题</td><td>新闻类型</td>" ;
echo "</tr>" ;
while ( $row =mysql_fetch_array( $result1 ))
{
echo "<tr>" ;
echo "<td>$row[id]</td><td>$row[title]</td><td>$row[classname]</td>" ;
echo "</tr>" ;
}
echo "</table>" ;
echo "<br/>" ;
echo $pagecontrol ;
|
希望本文所述对大家PHP程序设计有所帮助。