PHP+Access

 最近接了一个网站使用的是PHP+Access,汗,以前从来没有用php+Access做过,参考别人写的access函数,自己加入了一些其他的功能,封装为一个类,感觉调用蛮方便的,虽然没有测试过,但是感觉PHP+Access的速度没有PHP+MySQL速度快。

<?php
--------------------------------------------------------------------
//FileName:class.php
//Summary:Access
数据库操作类
//Author:
 forest
//CreateTime:2006-8-10  
//LastModifed:
//copyright(c)2006freeweb.nyist.net/~chairy
 [email]chaizuxue@163.com[/email]
//
 使用范例:
//$databasepath="database.mdb";
//$dbusername="";
//$dbpassword="";
//include_once("class.php");
//$access=newAccess($databasepath,$dbusername,$dbpassword);
--------------------------------------------------------------------
classAccess
{
var$databasepath,$constr,$dbusername,$dbpassword,$link;
functionAccess($databasepath,$dbusername,$dbpassword)
{
$this->databasepath=$databasepath;
$this->username=$dbusername;
$this->password=$dbpassword;
$this->connect();
}

functionconnect()
{
$this->constr="DRIVER={MicrosoftAccessDriver(*.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"
恭喜你,数据库连接成功!";
//elseecho"
数据库连接失败!";
}

functionquery($sql)
{
return@odbc_exec($this->link,$sql);
}

functionfirst_array($sql)
{
returnodbc_fetch_array($this->query($sql));
}

functionfetch_row($query)
{
returnodbc_fetch_row($query);
}

functiontotal_num($sql)//
取得记录总数
{
returnodbc_num_rows($this->query($sql));
}

functionclose()//
关闭数据库连接函数
{
  
odbc_close($this->link);
}

functioninsert($table,$field)//
插入记录函数
{
$temp=explode(',',$field);
$ins='';
for($i=0;$i<count($temp);$i++)
{
$ins.="'".$_POST[$temp[$i]]."',";
}
$ins=substr($ins,0,-1);
$sql="INSERTINTO".$table."(".$field.")VALUES(".$ins.")";
$this->query($sql);
}

functiongetinfo($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;
}

functiongetlist($table,$field,$colnum,$condition,$sort="ORDERBYidDESC")//
取得记录列表  
{
$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;
}

functiongetfieldlist($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;
}

functionupdateinfo($table,$field,$id,$set)//
更新记录
{
$sql="UPDATE".$table."SET".$set."WHERE".$field."=".$id;
$this->query($sql);
}

functiondeleteinfo($table,$field,$id)//
删除记录
{
$sql="DELETEFROM".$table."WHERE".$field."=".$id;
$this->query($sql);
}

functiondeleterecord($table,$condition)//
删除指定条件的记录
{
$sql="DELETEFROM".$table."WHERE".$condition;
$this->query($sql);
}

functiongetcondrecord($table,$condition="")//
取得指定条件的记录数
{
$sql="SELECTCOUNT(*)ASnumFROM".$table."".$condition;
$query=$this->query($sql);
$this->fetch_row($query);
$num=odbc_result($query,1);
return$num;
      
}
}
?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值