|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
PHP代码:-------------------------------------------------------------------------------- <html> <head> <title>PHP分页</title> </head> <body> <? //为了便于理解和更快地应用到工作中去,我们以MS SQL Server的NorthWind数据库Customers表为例。 $pageSize= 4; //每页显示的记录数 $hostname = "localhost"; //MSSQL Server $dbuser = "sa"; //用户名 $dbpasswd = ""; //密码 //连接数据库 $conn = mssql_connect($hostname,$dbuser,$dbpasswd) or die("无法连接数据库服务器!"); //选择数据库,为了方便,这里以MSSQL Server的pubs数据库为例 $db = mssql_select_db("NorthWind",$conn) or die("无法连接数据库!"); //以Customers表为例,构建查询字符串 $sql = "SELECT * FROM Customers"; //执行查询语句 $res = mssql_query($sql) or die("无法执行SQL:$sql"); //$page变量标示当前显示的页 if(!isset($page)) $page=1; if($page==0) $page=1; //得到当前查询到的纪录数 $totalNum $totalNum= mssql_num_rows($res); if($totalNum<=0) { echo "<p align=center>没有纪录"; exit; } //得到最大页码数maxPage $maxPage = (int)ceil($totalNum/$pageSize); if((int)$page > $maxPage) $page=$maxPage; ?> <table align="center" width="90%" border="1" cellspacing="2" cellpadding="2"> <tr bgcolor="#F7F2ff"> <? //显示表格头 for($i = 0; $i < mssql_num_fields($res); $i++) { echo "<td>".mssql_field_name($res,$i)."</td>" ; } ?> </tr> <? //根据偏移量($page - 1)*$pageSize,运用mssql_data_seek函数得到要显示的页面 if( mssql_data_seek($res,($page-1)*$pageSize) ) { $i=0; //循环显示当前纪录集 for($i;$i<$pageSize;$i++){ echo "<tr>"; //得到当前纪录,填充到数组$row; $row= mssql_fetch_row($res); if($row) { //循环显示当前纪录的所有字段值 for($j = 0;$j < count($row);$j++) { echo "<td>".$row[$j]."</td>"; } } echo "</tr>"; } } ?> </table> <br> <hr size=1> <? $style = "2"; switch($style) { //格式: [首页] [上页] [下页] [末页] case "1": { $out = "<div align=center>"; $out .= "[共".$maxPage."页] [第".$page."页] "; //首页和上页的链接 if( $totalNum>1 && $page>1) { $prevPage=$page-1; $out .= " <a href=$PHP_SELF?page=1>[首页]</a> "; $out .= " <a href=$PHP_SELF?page=$prevPage >[上页]</a> "; } //下页和末页的链接 if( $page>=1 && $page<$maxPage) { $nextPage= $page+1; $out .= " <a href=$PHP_SELF?page=$nextPage >[下页]</a> "; $out .= " <a href=$PHP_SELF?page=$maxPage>[末页]</a>"; } $out .= "</div>"; echo $out; } break; //格式: 1 2 3 4 5 case "2": { $linkNum = "4";//页面上显示连接的个数显示 $out = "<div align=center>第 "; $start = ($page-round($linkNum/2))>0 ? ($page-round($linkNum/2)) : "1"; $end = ($page+round($linkNum/2))<$maxPage ? ($page+round($linkNum/2)) : $maxPage; if($page<>1) $out .= "<a href=\\'?page=1\\' alt=\\'首页\\'>1</a> << "; //for($t=1;$t<=$maxPage;$t++) for($t=$start;$t<=$end;$t++) { $out .= ($page==$t) ? "<font color=\\'red\\'><b>".$t."</b></font> " : "<a href=\\'?page=$t\\'>$t</a> "; } if($page<>$maxPage) $out .= ">> <a href=\\'?page=$maxPage\\' alt=\\'末页\\'>$maxPage</a>"; $out .= " 页</div>"; echo $out; } break; //select下拉框直接跳转 case "3": { $out = "<div align=center>"; $out .= "第 <select onchange=/"location=\\'?page=\\'+this.options[this.selectedIndex].value/">"; for($i=1; $i<=$maxPage; $i++) { $out .= "<option value=\\'$i\\'".(($i==$page) ? \\' selected\\' : \\'\\').">$i</option>"; } $out .= "</select> 页"; $out .= "</div>"; echo $out; } break; default: echo ""; break; } ?> </body> </html> 返回类别: 教程 上一教程: What\'s New in PHP 5 countstars(翻译) 下一教程: 在PHP中得到多选的下拉菜单的各项值(一个例子) 您可以阅读与"求php的mssql翻页程序!"相关的教程: · PHP与已存在的Java应用程序集成 · PHP的计数器程序:解决全部可能碰到的问题 · 用Pear加速PHP程序开发 · 用PHP实现banner轮换的程序代码 · 如何对PHP程序中的常见漏洞进行攻击(上) |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |