PHP调用三种数据库的方法(2)

  开放数据库连接(ODBC)已成为一种与数据库进行通信的工业标准。PHP也提供了标准的接口,使得PHP能调用Access,SQL SERVER等数据库。其相关函数是:

  (1)integer odbc_connect(string dsn, string user, string password)

  连接到一个ODBC数据库源名字上。

  (2)integer odbc_exec(integer connection, string query)或 odbc_do(integer connection, string query)

  在一个连接上执行查询。

  (3)boolean odbc_fetch_row(integer result, integer row)

  从一个结果集中获取一行数据。Row参数是可选的,若为空缺,则返回下一个有效行。在结果集中不再剩余行时返回false。

  (4)boolean odbc_close(integer connection)

  关闭一个数据库的连接。若在该连接上有打开的事务,则返回一个错误,而且连接不会被关闭。

  最后,还是看个分页的例子:

  <?

  //设定每页显示条数

  $show_num = 10;

  $spages = $pages;//避免$pages后期被改变

  //定义连接

  $dsn = "localhost";

  $user = "sa";

  $password = "";

  //计算总记录数

  $rs_num = "select count(*) as id from bbs where zu='0' and lei='".$lei."'";

  $conn_id = odbc_connect($dsn,$user,$password);

  $rnum = odbc_exec($conn_id,$rs_num);

  while(odbc_fetch_row($rnum)){

  $total_rs = odbc_result($rnum,"id");//将总记录数放入$total_rs变量

  }

  //计算与页有关的条数

  $nnn = $total_rs / $show_num;//计算总页数

  $hnnn = intval($nnn);//将总页数取整

  $cnnnn = $nnn - $hnnn;

  //计算所需总页数

  switch ($cnnn){

  case "0":

  $hnnn++;

  $nnn = $hnnn;//总页数

  break;

  default :

  $nnn = $hnnn;//总页数

  break;

  };

  if ($nnn == 0)$nnn++;

  //计算页面改变所需的条件

  $fore = $pages;

  $next = $pages;

  $fore -= 1;

  $next += 1;

  if ($fore > 0) {

  echo "<a>首页</a>";

  echo "<a>前页</a>";

  };

  if ($pages < $nnn) {

  echo "<a>后页</a>";

  echo "<a>尾页</a>";

  };

  echo "共".$nnn."页";

  $query_string = "SELECT * FROM table where condition order by you wanted order";

  $cur = odbc_exec($conn_id,$query_string);

  //取到循环的顶部

  $cnum = ($pages-1) * $show_num;//计算当前的记录游标的位置

  //空循环到显示记录游标处

  if ($cnum != 0){

  for ($i=0;$i<=$cnum;odbc_fetch_row($cur)){$i++;};

  };

  $i=1;

  //显示记录

  while(odbc_fetch_row($cur)){

  echo ;

  if ($i == $show_num){//在不满页数时跳出程序

  break;

  };

  $i++;

  };

  //关闭连接

  odbc_close($conn_id);

  ?>