|
前些天下载了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; }
?>
 |
频道声明:本频道的文章除部分特别声明禁止转载的专稿外,可以自由转载.但请务必注明出出处和原始作者 文章版权归本频道与文章作者所有.对于被频道转载文章的个人和网站,我们表示深深的谢意。
| 原始作者:佚名 |
录入时间:2006-11-9 |
| 信息来源:不详 |
投稿信箱:itqoo@126.com |
|
|
 |
|