一个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 相关文章推荐
跟我学小偷程序之成功偷取首页(第三天)
Oct 09 PHP
使用Curl进行抓取远程内容时url中文编码问题示例探讨
Oct 29 PHP
php5.4以下版本json不支持不转义内容中文的解决方法
Jan 13 PHP
php文件夹的创建与删除方法
Jan 24 PHP
php可应用于面包屑导航的递归寻找家谱树实现方法
Feb 02 PHP
PHP自动生成表单代码分享
Jun 19 PHP
PHP实现简单爬虫的方法
Jul 29 PHP
浅谈php+phpStorm+xdebug配置方法
Sep 17 PHP
PHP动态生成指定大小随机图片的方法
Mar 25 PHP
Yii框架数据模型的验证规则rules()被执行的方法
Dec 02 PHP
PHP获取ttf格式文件字体名的方法示例
Mar 06 PHP
php使用goto实现自动重启swoole、reactphp、workerman服务的代码
Apr 13 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边学边教》(02.Apache+PHP环境配置――下篇)
2006/12/13 PHP
发布一个用PHP fsockopen写的HTTP下载的类
2007/02/22 PHP
PHP可变函数的使用详解
2013/06/14 PHP
php实现邮件发送并带有附件
2014/01/24 PHP
用 Composer构建自己的 PHP 框架之设计 MVC
2014/10/30 PHP
ECshop 迁移到 PHP7版本时遇到的兼容性问题
2016/02/15 PHP
PHP使用递归算法无限遍历数组示例
2017/01/13 PHP
常用js脚本
2006/12/03 Javascript
jQuery 图像裁剪插件Jcrop的简单使用
2009/05/22 Javascript
JS分页效果示例
2013/10/11 Javascript
使用JS实现jQuery的addClass, removeClass, hasClass函数功能
2014/10/31 Javascript
jQuery中html()方法用法实例
2014/12/25 Javascript
javascript嵌套函数和在函数内调用外部函数的区别分析
2016/01/31 Javascript
让DIV的滚动条自动滚动到最底部的3种方法(推荐)
2016/09/24 Javascript
JavaScript登录验证码的实现
2016/10/27 Javascript
Bootstrap实现带暂停功能的轮播组件(推荐)
2016/11/25 Javascript
Vue制作Todo List网页
2017/04/26 Javascript
angularjs实现过滤并替换关键字小功能
2017/09/19 Javascript
使用ajax的post同步执行(实现方法)
2017/12/21 Javascript
[02:07]DOTA2超级联赛专访BBC:难忘网吧超神经历
2013/06/09 DOTA
python在windows下实现备份程序实例
2014/07/04 Python
python对指定目录下文件进行批量重命名的方法
2015/04/18 Python
python如何读写json数据
2018/03/21 Python
HTML5之WebGL 3D概述(下)—借助类库开发及框架介绍
2013/01/31 HTML / CSS
利用HTML5的新特点实现图片文件异步上传
2014/05/29 HTML / CSS
韩国三星集团旗下时尚品牌官网:SSF SHOP
2016/08/02 全球购物
德国网上药房:Apotal
2017/04/04 全球购物
C#如何调用Word并打开一个Word文档
2013/05/08 面试题
大学毕业生通用自我评价
2014/01/05 职场文书
石油工程专业毕业生求职信
2014/04/13 职场文书
党员对照检查材料
2014/09/22 职场文书
2014年大堂经理工作总结
2014/11/21 职场文书
财务稽核岗位职责
2015/04/13 职场文书
撤诉书怎么写
2015/05/19 职场文书
2016清明节森林防火广播稿
2015/12/17 职场文书
初任公务员培训心得体会
2016/01/08 职场文书