讲解PHP连接调用数据库的方法

ggp 技术 2013-06-19 424 次浏览

MySQL是一个小巧灵珑的数据库服务器软件,对于中、小型应用系统是非常理想的。除了支持标准的ANSI SQL语句外,最重要的是,它还支持多种平台,而在Unix/Linux系统上,MySQL支持多线程运行方式,从而能获得相当好的性能。

?<?   $pagesize = 5; //每页显示5条记录   $host="localhost";   $user="user";   $password="psw";   $dbname="book"; //所查询的库表名;   //连接MySQL数据库   mysql_connect("$host","$user","$password") or die("无法连接MySQL数据库服务器!");   $db = mysql_select_db("$dbname") or die("无法连接数据库!");   $sql = "select count(*) as total from pagetest";//生成查询记录数的SQL语句   $rst = mysql_query($sql) or die("无法执行SQL语句:$sql !"); //查询记录数   $row = mysql_fetch_array($rst) or die("没有更多的记录!"); /取出一条记录   $rowcount = $row["total"];//取出记录数   mysql_free_result($rst) or die("无法释放result资源!"); //释放result资源   $pagecount = bcdiv($rowcount+$pagesize-1,$pagesize,0);//算出总共有几页   if(!isset($pageno)) {   $pageno = 1; //在没有设置pageno时,缺省为显示第1页   }   if($pageno<1) {   $pageno = 1; //若pageno比1小,则把它设置为1   }   if($pageno>$pagecount) {
  $pageno = $pagecount; //若pageno比总共的页数大,则把它设置为最后一页
  }
  if($pageno>0) {
  $href = eregi_replace("%2f","/",urlencode($PHP_SELF));//把$PHP_SELF转换为可以在URL上使用的字符串,这样的话就可以处理中文目录或中文文件名
  if($pageno>1){//显示上一页的裢接
  echo "上一页 ";
  }
  else{
  echo "上一页";
  }
  for($i=1;$i<$pageno;$i++){   echo "" . $i . " ";
  }
  echo $pageno . " ";
  for($i++;$i<=$pagecount;$i++){   echo "" . $i . " ";
  }
  if($pageno<$pagecount){//显示下一页的裢接   echo "下一页 ";
  }
  else{
  echo "下一页 ";
  }
  $offset = ($pageno-1) * $pagesize;//算出本页第一条记录在整个表中的位置(第一条记录为0)
  $sql = "select * from pagetest LIMIT $offset,$pagesize";//生成查询本页数据的SQL语句
  $rst = mysql_query($sql);//查询本页数据
  $num_fields = mysql_num_fields($rst);//取得字段总数
  $i = 0;
  while($i<$num_fields){//取得所有字段的名字   $fields[$i] = mysql_field_name($rst,$i);//取得第i+1个字段的名字   $i++;   }   echo "

";//开始输出表格
  echo "

";
  reset($fields);
  while(list(,$field_name)=each($fields)){//显示字段名称
  echo "

";
  }
  echo "

";
  while($row=mysql_fetch_array($rst)){//显示本页数据
  echo "

";
  reset($fields);
  while(list(,$field_name)=each($fields)){//显示每个字段的值
  $field_value = $row[$field_name];
  if($field_value==""){
  echo "

";
  }
  else{
  echo "

";
  }
  }
  echo "

";
  }
  echo "

$field_name
$field_value

";//表格输出结束
  mysql_free_result($rst) or die("无法释放result资源!");//释放result资源
  }
  else{
  echo "目前该表中没有任何数据!";
  }
  mysql_close($server) or die("无法与服务器断开连接!");//断开连接并释放资源
  ?>

回顶部