Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung der Beispiele für PHP-Zugriffsoperationsklassen

Detaillierte Erläuterung der Beispiele für PHP-Zugriffsoperationsklassen

怪我咯
怪我咯Original
2017-07-07 10:28:211257Durchsuche

ZugriffDatenbankbetriebKlassenimplementierungscode

Der Code lautet wie folgt:

<?php     
--------------------------------------------------------------------     
//FileName:class.php     
//Summary: Access数据库操作类     
//Author:  forest     
//CreateTime: 2006-8-10          
//LastModifed:     
//copyright (c)2006      
//http://freeweb.nyist.net/~chairy       
//[email]chaizuxue@163.com[/email]     
//   使用范例:     
//$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(&#39;,&#39;,$field);     
        $ins=&#39;&#39;;     
        for ($i=0;$i<count($temp);$i++)     
        {     
            $ins.="&#39;".$_POST[$temp[$i]]."&#39;,";     
        }     
        $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<$colnum;$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<$fieldnum;$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;                 
    }     
     }     
?>

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Beispiele für PHP-Zugriffsoperationsklassen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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