Pages 1 / Total 1 1
已被查看118次    只看楼主
PHP Ajax分页显示数据(1)
主题
松风水月  




等级:终级天王
积分:3198
经验:1010
魅力:2188
威望:0
财富:2432
金钱:0.00元
帖子:149
注册:2007-04-11 16:29
楼主 资料 短消息
PHP Ajax分页显示数据(1) 2008-06-13 09:17
对于PHP和Ajax分页显示数据库记录,网络上有多种方法,如服务器端只返回数据,其样式在客户端设置;或者在服务器端将样式与数据一起返回。本实例为了代码的安全起见,这里使用了第二种方法实现。
服务器端文件Example8_7_1.php.
<?php
header("Content-Type:text/html;charset=GB2312");
$pagesize=3;
//echo $_POST['page'];
$db=mysql_connect("localhost","root","111111");           //创建数据库连接
mysql_query("set character set gbk");
mysql_select_db("student");
$result = mysql_query("Select count(DISTINCT id) FROM ".book);
$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 `id` , count( * ) from ".book." GROUP BY `id` order by id desc limit $offset,$pagesize");
$result=mysql_query("select * from ".book." GROUP BY `id` order by id desc limit $offset,$pagesize");
$num = mysql_num_rows($result);

while ($row = mysql_fetch_array($result,MYSQL_NUM)) {
$hotelname[] = $row[0];
$name[]=$row[1];
$author[]=$row[2];
$publisher[]=$row[3];
$isbn[]=$row[4];
$type[]=$row[5];
$price[]=$row[6];
//$countpeople[] = $row[1];
}
echo "<TABLE style=\"MARGIN-BOTTOM: 20px\" cellSpacing=0 cellPadding=0 width=90% border=1 align=center>\n";
echo "<TBODY>\n";
echo "<th>ID编号</th><th>名称</th><th>作者</th><th>出版社</th><th>ISBN号</th><th>类型</th><th>价格</th>";
for($a=0;$a<$num;$a++)
{
echo "<TR>\n";
echo "<TD style=\"PADDING-TOP: 5px\" align=left>".$hotelname[$a]."</TD>";
echo "<TD style=\"PADDING-TOP: 5px\" align=left>".$name[$a]."</TD>";
echo "<TD style=\"PADDING-TOP: 5px\" align=left>".$author[$a]."</TD>";
echo "<TD style=\"PADDING-TOP: 5px\" align=left>".$publisher[$a]."</TD>";
echo "<TD style=\"PADDING-TOP: 5px\" align=left>".$isbn[$a]."</TD>";
echo "<TD style=\"PADDING-TOP: 5px\" align=left>".$type[$a]."</TD>";
echo "<TD style=\"PADDING-TOP: 5px\" align=left>".$price[$a]."</TD>";
echo "</TR>";   
}
echo "</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>";
?>

IP:123.*.*.*     顶部
论坛交流 ›› PHP ›› PHP Ajax分页显示数据(1)