当前位置: 首页 > 图文教程 > 网络编程 > PHP > 用php+odbc+access数据库来操作函数

PHP
PHP日期时间函数的高级应用技巧
php 无限级 SelectTree 类
简单的php 验证图片生成函数
php print EOF实现方法
php session 错误
PHP的单引号和双引号 字符串效率
php 字符过滤类,用于过滤各类用户输入的数据
php 字符转义 注意事项
PHP mail 通过Windows的SMTP发送邮件失败的解决方案
PHP XML备份Mysql数据库
很好用的PHP数据库类
phpMyAdmin 安装及问题总结
UCenter Home二次开发指南
PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法
php $_ENV为空的原因分析
php Undefined index的问题
PHP 服务器配置(使用Apache及IIS两种方法)
一个很不错的PHP翻页类
php 正则 过滤html 的超链接
PHP 文件扩展名 获取函数

PHP 中的 用php+odbc+access数据库来操作函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 219 ::
收藏到网摘: n/a

前些天下载了adodb,想用adodb连access数据库,后来连是连上了,不过不能更新和插入记录,也不知道为什么到现在还没人给我回答那个苦恼的问题,后来就放弃了adodb,使用php自己的odbc,但是使用很不方便,就写下了下面这些函数,还没有封装成类,希望能够为有同样问题的朋友一些帮助 。

 <?php
  /*
   * @ access class
   * insert,update,delete record
   * version 1.0
   * date 2005.6
   * power by Samsun Manzalo (34n 猪八戒)
   *
   */
  
  //====================================
  // insert record
  // 插入记录
  //====================================
  function insRd( table, field){
    connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
    connid = @odbc_connect( connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
    tmpA = explode(',', field);
    ins = '';
   for( i=0; i<count( tmpA); i++){
    ins.= "'". _POST[ tmpA[ i]]."',";
   }
    ins = substr( ins,0,-1);
    sql = "INSERT INTO ". table." (". field.") VALUES (". ins.")";
   //echo  sql;exit;
    query = @odbc_do( connid, sql);
  }
  
  
  //====================================
  // get one record detail
  // 取得当条记录详细信息
  //====================================
  function getInfo( table, field, id, colnum){
    connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
    connid = @odbc_connect( connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
    sql = "select * from ". table." where ". field."=". id;
    query = @odbc_do( connid, sql);
  
   if(odbc_fetch_row( query)){
   for( i=0; i< colnum; i++){
    info[ i] = odbc_result( query, i+1);
   }
   }
   return  info;
  }
  
  
  //====================================
  // get record list
  // 取得记录列表
  //====================================
  function getList( table, field, colnum, condition, sort="order by id desc"){
    connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
    connid = @odbc_connect( connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
    sql = "select * from ". table." ". condition." ". sort;
    query = @odbc_do( connid, sql);
   //echo  sql."<br>";
    i = 0;
   while(odbc_fetch_row( query)){
    rdList[ i] = getInfo( table, field,odbc_result( query,1), colnum);
    i++;
   }
   return  rdList;
  }
  
  
  //====================================
  // get record list condition
  // 取得记录列表
  //====================================
  function getFieldList( table, field, fieldnum, condition="", sort=""){
    connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
    connid = @odbc_connect( connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
    sql = "select ". field." from ". table." ". condition." ". sort;
    query = @odbc_do( connid, sql);
   //echo  sql."<br>";
    i = 0;
   while(odbc_fetch_row( query)){
   for( j=0; j< fieldnum; j++){
    info[ j] = odbc_result( query, j+1);
   }
    rdList[ i] =  info;
    i++;
   }
   return  rdList;
  }
  
  //====================================
  // update record
  // 更新记录
  //====================================
  function updateInfo( table, field, id, set){
    connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
    connid = @odbc_connect( connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
    sql = "update ". table." set ". set." where ". field."=". id;
    query = @odbc_do( connid, sql);
  }
  
  
  //====================================
  // record delete
  // 删除记录
  //====================================
  function delRd( table, field, id){
    connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
    connid = @odbc_connect( connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
    sql = "delete from ". table." where ". field."=". id;
    query = @odbc_do( connid, sql);
  }
  
  
  //====================================
  // record delete cat
  // 删除记录(条件)
  //====================================
  function delOrRd( table, condition){
    connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
    connid = @odbc_connect( connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
    sql = "delete from ". table." where ". condition;
    query = @odbc_do( connid, sql);
  }
  
  
  //====================================
  // count record
  // 取得记录数
  //====================================
  function countRd( table, condition=""){
    connstr = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=database/email.mdb";
    connid = @odbc_connect( connstr,"","",SQL_CUR_USE_ODBC ) or die ("数据库连接错误!");
    sql = "select count(*) as num from ". table." ". condition;
    query = @odbc_do( connid, sql);
   odbc_fetch_row( query);
    num = odbc_result( query,1);
   return  num;
  }
  
  ?>