ホームページ > php教程 > php手册 > 最近作成された PHP オペレーション Access クラス (PHP+ODBC+Access)

最近作成された PHP オペレーション Access クラス (PHP+ODBC+Access)

WBOY
リリース: 2016-06-21 09:00:54
オリジナル
852 人が閲覧しました

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

    代码如下:

PHP代码:

--------------------------------------------------------------------
//FileName:class.php
//Summary: Access数据库操作类
// 使用范例:
//$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 ドライバー (*.mdb)}; realpath($this->データベースパス);
$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_f etch_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 {
$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;
}

関数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 {
$info[$j]=odbc_result($query,$j+ 1);
}
$rdlist[$i]=$info;
$i++;
}
return $rdlist;
}
🎜> 関数 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);
$num を返します。           
}
}
?>



関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート