PHP+MSSQL 分页问题(从MySql转为MSSQL)--在线等! 拿个 PHP+MYSQL 的分页代码改写一下不就得了.... 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 由于mssql没有limit的功能,mysql和mssql的分页很不一样。 <html><head><title>PHP分页</title></head><body><?$gPageSize= 10; //每页显示的记录数$hostname = "localhost"; //MsSQL Server$dbuser = "sa"; //用户名$dbpasswd = ""; //密码//连接数据库$id = mssql_connect($hostname,$dbuser,$dbpasswd) or die("无法连接数据库服务器!");$db = mssql_select_db("xxx",$id) or die("无法连接数据库!");//以xxx表为例,构建查询字符串$query = "select * from news_info";//执行查询语句$rresult = mssql_query($query) or die("无法执行SQL:$query");//$page变量标示当前显示的页if(!isset($page)) $page=1;if($page==0) $page=1;//得到当前查询到的纪录数 $nNumRowsif(($nNumRows= mssql_num_rows($rresult))<=0){echo "<p align=center>没有纪录";exit;};//得到最大页码数MaxPage$MaxPage = (int)ceil($nNumRows/$gPageSize);if((int)$page > $MaxPage)$page=$maxPage;?> <table align="center" width="80%" border=0> <tr><td> <? echo "<font size=2>第 $page 页,共 $MaxPage 页</font>";?> </td><td></td></tr></table><table align="center" width="80%" border="1" cellspacing="0" cellpadding="4" bordercolorlight="#CC9966" bgcolor="#00F2EE" bordercolordark="#FFFFFF" class="LZH"><tr bgcolor="#F7F2ff" style="font-size:14.8px;font-weight:bold"><?//显示表格头for($iCnt = 0; $iCnt < mssql_num_fields($rresult); $iCnt++){echo "<td>".mssql_field_name($rresult,$iCnt)."</td>" ;}?> </tr><?//根据偏移量($page - 1)*$gPageSize,运用mssql_data_seek函数得到要显示的页面if( mssql_data_seek($rresult,($page-1)*$gPageSize) ){ $i=0;//循环显示当前纪录集for($i;$i<$gPageSize;$i++){echo "<tr style=\"font-size:12px\">";//得到当前纪录,填充到数组$arr;$arr= mssql_fetch_row($rresult);if($arr){//循环显示当前纪录的所有字段值for($nOffSet = 0;$nOffSet < count($arr);$nOffSet++){echo "<td>".$arr[$nOffSet]."</td>";}}echo "</tr>";}}?> </table><br><hr size=1 width=80%><div align=center style="font-size:12px"><?//首页和上一页的链接if( $nNumRows>1 && $page>1){$prevPage=$page-1; echo " <a href=$PHP_SELF?page=1>首页</a> "; echo " <a href=$PHP_SELF?page=$prevPage >上一页</a> ";}//下一页和末页的链接if( $page>=1 && $page<$MaxPage){$nextPage= $page+1;echo " <a href=$PHP_SELF?page=$nextPage >下一页</a> ";echo " <a href=$PHP_SELF?page=$MaxPage >末页</a> "; }?> </div></body></html> 求一正则 江湖救急。出错信息提示,何解? 空间的display_errors为 Off下,如何查错呢 Zend Framework中多语言资源文件如何设计? 新年继续发问,关于pear的使用 这个网站中的图片上的边框是怎么加的?谁有相似的代码? 添加数据问题?Duplicate entry '0' for key 1 为何我的上传无效?显示不出内容来 搜索mysql的表失败 php如何实现打印功能? 问个可行性的问题? 参加CNNIC调查中万元大奖
<head>
<title>PHP分页</title>
</head>
<body>
<?
$gPageSize= 10; //每页显示的记录数
$hostname = "localhost"; //MsSQL Server
$dbuser = "sa"; //用户名
$dbpasswd = ""; //密码
//连接数据库
$id = mssql_connect($hostname,$dbuser,$dbpasswd) or die("无法连接数据库服务器!");
$db = mssql_select_db("xxx",$id) or die("无法连接数据库!");
//以xxx表为例,构建查询字符串
$query = "select * from news_info";
//执行查询语句
$rresult = mssql_query($query) or die("无法执行SQL:$query");
//$page变量标示当前显示的页
if(!isset($page)) $page=1;
if($page==0) $page=1;
//得到当前查询到的纪录数 $nNumRows
if(($nNumRows= mssql_num_rows($rresult))<=0)
{
echo "<p align=center>没有纪录";
exit;
};
//得到最大页码数MaxPage
$MaxPage = (int)ceil($nNumRows/$gPageSize);
if((int)$page > $MaxPage)
$page=$maxPage;
?>
<table align="center" width="80%" border=0> <tr><td> <? echo "<font size=2>第
$page 页,共 $MaxPage 页</font>";?> </td><td></td></tr></table>
<table align="center" width="80%" border="1" cellspacing="0" cellpadding="4" bordercolorlight="#CC9966" bgcolor="#00F2EE" bordercolordark="#FFFFFF" class="LZH">
<tr bgcolor="#F7F2ff" style="font-size:14.8px;font-weight:bold">
<?
//显示表格头
for($iCnt = 0; $iCnt < mssql_num_fields($rresult); $iCnt++)
{
echo "<td>".mssql_field_name($rresult,$iCnt)."</td>" ;
}
?>
</tr>
<?
//根据偏移量($page - 1)*$gPageSize,运用mssql_data_seek函数得到要显示的页面
if( mssql_data_seek($rresult,($page-1)*$gPageSize) )
{
$i=0;
//循环显示当前纪录集
for($i;$i<$gPageSize;$i++)
{
echo "<tr style=\"font-size:12px\">";
//得到当前纪录,填充到数组$arr;
$arr= mssql_fetch_row($rresult);
if($arr)
{
//循环显示当前纪录的所有字段值
for($nOffSet = 0;$nOffSet < count($arr);$nOffSet++)
{
echo "<td>".$arr[$nOffSet]."</td>";
}
}
echo "</tr>";
}
}
?>
</table>
<br>
<hr size=1 width=80%>
<div align=center style="font-size:12px">
<?
//首页和上一页的链接
if( $nNumRows>1 && $page>1)
{
$prevPage=$page-1;
echo " <a href=$PHP_SELF?page=1>首页</a> ";
echo " <a href=$PHP_SELF?page=$prevPage >上一页</a> ";
}
//下一页和末页的链接
if( $page>=1 && $page<$MaxPage)
{
$nextPage= $page+1;
echo " <a href=$PHP_SELF?page=$nextPage >下一页</a> ";
echo " <a href=$PHP_SELF?page=$MaxPage >末页</a> ";
}
?>
</div>
</body>
</html>