PHP连接MSSQLServer数据库和翻页的一个实例

来源:互联网 发布:excel表格数据无法求和 编辑:程序博客网 时间:2024/05/22 17:27

 

这是从网上找的一个实例(来源不详),经我修改调试后,加上注释,作为自己学习参考资料。通过这个实例可以学习了解下列内容:

1、PHP连接MSSQLServer数据库;

2、浏览数据翻页的实现方法;

3、查询结果使用表格输出;

4、HTML与PHP混合编程。

 

<?

/*
@为单目操作符,放在函数前表示不显示错误信息
如果没有@,在找不到数据库时浏览器将会返回下列信息
Warning: mssql_connect() [function.mssql-connect]: Unable to connect to server: localhost in D:/Inetpub/wwwroot/phptest/sqlserverlist.php on line 4
连接不上
*/
$id=@mssql_connect("localhost","sa","password") or die("连接不上");
//选择数据库
$db=mssql_select_db("authtest",$id);
//定义查询
$query="select * from T_SYS_User";
//发送查询串,成功则返回true
$result=mssql_query($query);

//每页行数
$pagelines = 6;

if($result)://如果查询串发送成功则
 //这里是{}的替代写法,即开始为":",结束为endif
 //如果没有定义起点tt则起始页为0,否则起始页为tt
 $tt = $_GET['tt'];//从参数行取起始行
 echo '起始行为:',$tt,"/";
 if($tt==""){
  $nopa=0;}
 else $nopa=$tt;
 //检索总行数放到$gg中
 $gg=mssql_num_rows($result);
 echo '总计',$gg,"行<br>";
 $i=0;
 //检索一行结果放到数组$dd中
 $dd=mssql_fetch_array($result);
 //有结果$dd=行数,无结果$dd=0(到底了)
 if(!$dd){echo '到底了';}
 //下面是http代码
?>
<html><body><table border=1 rules="all" >
<caption>用户表</caption>
<?
 //当有数据时且nopa不是最后一行且i小于每页行数
 while($dd&&$nopa<=$gg&&$i<$pagelines){
  if($nopa>=$gg) $nopa=$gg;//如果当前行超过总行数则
  @mssql_data_seek($result,$nopa);
  $dd=@mssql_fetch_array($result);
  if($dd){
   $nopa++;$i++;
   echo '<tr>','<td>',$nopa;
   //选择字段输出

    /*
   echo '<td>',$dd[0];
   echo '<td>',$dd[1];
   echo '<td>',$dd[2];
   echo '<td>',$dd[3];
   echo '<td>',$dd[4];

   */
   //下面逐个输出全部字段
   for($k=0;$k<4;$k++) {
    if($dd[$k]<>"")
     echo '<td>',$dd[$k];
    else
     print "<td>";
   }//for
  } //if
 }//while
endif;
?></table>
<?if($nopa<$gg){?>
 <a href=sqlserverlist.php?tt=<?echo $nopa+1;?>>下一页</a></body></html>
<?
}?>

原创粉丝点击