一个PHP操作Access类(PHP+ODBC+Access)


Posted in PHP onJanuary 02, 2007
<?php 
-------------------------------------------------------------------- 
//FileName:class.php 
//Summary: Access数据库操作类 
//Author:  forest 
//CreateTime: 2006-8-10      
//LastModifed: 
//copyright (c)2006 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(',',$field); 
        $ins=''; 
        for ($i=0;$i<count($temp);$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<$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;             
    } 
     } 
?>  
 
PHP 相关文章推荐
解析yii数据库的增删查改
Jun 20 PHP
免费的ip数据库淘宝IP地址库简介和PHP调用实例
Apr 08 PHP
destoon实现首页显示供应、企业、资讯条数的方法
Jul 15 PHP
PHP实现阳历到农历转换的类实例
Mar 07 PHP
WIFI万能钥匙密码查询接口实例
Sep 28 PHP
PHP中用mysqli面向对象打开连接关闭mysql数据库的方法
Nov 05 PHP
thinkPHP框架实现图像裁剪、缩放、加水印的方法
Mar 14 PHP
php fread函数使用方法总结
May 28 PHP
laravel 5.3 单用户登录简单实现方法
Oct 14 PHP
Yii框架getter与setter方法功能与用法分析
Oct 22 PHP
ThinkPHP5 框架引入 Go AOP,PHP AOP编程项目详解
May 12 PHP
Thinkphp5框架异常处理操作实例分析
Jun 03 PHP
一个用php实现的获取URL信息的类
Jan 02 #PHP
PHP 和 MySQL 开发的 8 个技巧
Jan 02 #PHP
Smarty结合Ajax实现无刷新留言本实例
Jan 02 #PHP
Ajax PHP分页演示
Jan 02 #PHP
windows下PHP APACHE MYSQ完整配置
Jan 02 #PHP
PHP Ajax实现页面无刷新发表评论
Jan 02 #PHP
PHP+AJAX实现无刷新注册(带用户名实时检测)
Jan 02 #PHP
You might like
PHP下常用正则表达式整理
2010/10/26 PHP
php中数组首字符过滤功能代码
2012/07/31 PHP
javascript window对象属性整理
2009/10/24 Javascript
JavaScript 函数惰性载入的实现及其优点介绍
2013/08/12 Javascript
JS随机漂浮广告代码具体实例
2013/11/19 Javascript
给js文件传参数(详解)
2014/07/13 Javascript
js中直接声明一个对象的方法
2014/08/10 Javascript
轻松学习jQuery插件EasyUI EasyUI创建CRUD应用
2015/11/30 Javascript
神奇!js+CSS+DIV实现文字颜色渐变效果
2016/03/16 Javascript
深入理解jQuery之防止冒泡事件
2016/05/24 Javascript
JS实现iframe自适应高度的方法(兼容IE与FireFox)
2016/06/24 Javascript
jquery+CSS3实现3D拖拽相册效果
2016/07/18 Javascript
js事件冒泡与事件捕获详解
2017/02/20 Javascript
利用Ionic2 + angular4实现一个地区选择组件
2017/07/27 Javascript
vuejs实现ready函数加载完之后执行某个函数的方法
2018/08/31 Javascript
详解Vue CLI3配置解析之css.extract
2018/09/14 Javascript
vue和better-scroll实现列表左右联动效果详解
2019/04/29 Javascript
Ubuntu下创建虚拟独立的Python环境全过程
2017/02/10 Python
WINDOWS 同时安装 python2 python3 后 pip 错误的解决方法
2017/03/16 Python
Python实现获取照片拍摄日期并重命名的方法
2017/09/30 Python
Python中scatter函数参数及用法详解
2017/11/08 Python
python实现多层感知器
2019/01/18 Python
全面了解django的缓存机制及使用方法
2019/07/22 Python
django 单表操作实例详解
2019/07/30 Python
tensorboard实现同时显示训练曲线和测试曲线
2020/01/21 Python
Ibatis中如何提高SQL Map的性能
2013/05/11 面试题
主持人婚宴答谢词
2014/01/28 职场文书
退休教师欢送会主持词
2014/03/31 职场文书
主题实践活动总结
2014/05/08 职场文书
白血病捐款倡议书
2014/05/14 职场文书
护士节活动总结
2014/08/29 职场文书
暑期社会实践个人总结
2015/03/06 职场文书
小学生节水倡议书
2015/04/29 职场文书
2015秋季小学开学寄语
2015/05/27 职场文书
《牧场之国》教学反思
2016/02/22 职场文书
MySQL创建高性能索引的全步骤
2021/05/02 MySQL