Heim > php教程 > php手册 > 最近写的一个PHP操作Access类(PHP+ODBC+Access)

最近写的一个PHP操作Access类(PHP+ODBC+Access)

WBOY
Freigeben: 2016-06-21 09:00:54
Original
847 Leute haben es durchsucht

  最近接了一个网站使用的是PHP+Access,汗,以前从来没有用php+Access做过,参考别人写的access函数,自己加入了一些其他的功能,封装为一个类,感觉调用蛮方便的,虽然没有测试过,但是感觉PHP+Access的速度没有PHP+MySQL速度快。

    代码如下:

PHP代码:

--------------------------------------------------------------------
//FileName:class.php
//Summary: Access数据库操作类
//   使用范例:
//$databasepath="database.mdb";
//$dbusername="";
//$dbpassword="";
//include_once("class.php");
//$access=new Access($databasepath,$dbusername,$dbpassword);

--------------------------------------------------------------------
    class Access
    {
         var $databasepath,$constr,$dbusername,$dbpassword,$link;
         function Access($databasepath,$dbusername,$dbpassword)
         {
               $this->databasepath=$databasepath;
        $this->username=$dbusername;
        $this->password=$dbpassword;
        $this->connect();
          }
       
    function connect()
    {
        $this->constr="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath($this->databasepath);
        $this->link=odbc_connect($this->constr,$this->username,$this->password,SQL_CUR_USE_ODBC);
        return $this->link;
        //if($this->link) echo "恭喜你,数据库连接成功!";
        //else echo "数据库连接失败!";
    }
       
    function query($sql)
    {
        return @odbc_exec($this->link,$sql);
    }
       
    function first_array($sql)
    {
        return odbc_fetch_array($this->query($sql));
    }
       
    function fetch_row($query)
    {
        return odbc_fetch_row($query);
    }
       
    function total_num($sql)//取得记录总数
    {
        return odbc_num_rows($this->query($sql));
    }
       
    function close()//关闭数据库连接函数
    {   
        odbc_close($this->link);
    }
           
    function insert($table,$field)//插入记录函数
    {
        $temp=explode(',',$field);
        $ins='';
        for ($i=0;$i        {
            $ins.="'".$_POST[$temp[$i]]."',";
        }
        $ins=substr($ins,0,-1);
        $sql="INSERT INTO ".$table." (".$field.") VALUES (".$ins.")";
        $this->query($sql);
    }
       
    function getinfo($table,$field,$id,$colnum)//取得当条记录详细信息
    {
        $sql="SELECT * FROM ".$table." WHERE ".$field."=".$id."";
        $query=$this->query($sql);
        if($this->fetch_row($query))
        {
            for ($i=1;$i            {
          $info[$i]=odbc_result($query,$i);
             }
         }
         return $info;
    }
       
    function getlist($table,$field,$colnum,$condition,$sort="ORDER BY id DESC")//取得记录列表   
    {
         $sql="SELECT * FROM ".$table." ".$condition." ".$sort;
         $query=$this->query($sql);
         $i=0;
         while ($this->fetch_row($query))
         {
        $recordlist[$i]=getinfo($table,$field,odbc_result($query,1),$colnum);
        $i++;
          }
          return $recordlist;
    }
       
    function getfieldlist($table,$field,$fieldnum,$condition="",$sort="")//取得记录列表
    {
         $sql="SELECT ".$field." FROM ".$table." ".$condition." ".$sort;
         $query=$this->query($sql);
         $i=0;
         while ($this->fetch_row($query))
         {
         for ($j=0;$j        {
                   $info[$j]=odbc_result($query,$j+1);
        }   
        $rdlist[$i]=$info;
        $i++;
         }
         return $rdlist;
    }
       
    function updateinfo($table,$field,$id,$set)//更新记录
    {
        $sql="UPDATE ".$table." SET ".$set." WHERE ".$field."=".$id;
        $this->query($sql);
    }
       
    function deleteinfo($table,$field,$id)//删除记录
    {
         $sql="DELETE FROM ".$table." WHERE ".$field."=".$id;
         $this->query($sql);
    }
       
    function deleterecord($table,$condition)//删除指定条件的记录
    {
         $sql="DELETE FROM ".$table." WHERE ".$condition;
         $this->query($sql);
    }
       
    function getcondrecord($table,$condition="")// 取得指定条件的记录数
    {
         $sql="SELECT COUNT(*) AS num FROM ".$table." ".$condition;
         $query=$this->query($sql);
         $this->fetch_row($query);
         $num=odbc_result($query,1);
         return $num;           
    }
     }
?>



Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage