Table des matières
恭喜您报名成功,请等待工作人员与您联系!
Maison développement back-end tutoriel php PHP操作Access数据库类

PHP操作Access数据库类

Jun 20, 2016 pm 01:01 PM

 

PHP操作ACCESS数据库类库分享

/*

FileName:cls_access.php

Summary: Access数据库操作类

*************************************

使用范例:

========================

$databasepath='D:/wwwroot/cef/www/class/testdb.mdb';

//或者$databasepath='testdb.mdb';

$dbusername='';

$dbpassword='';

require_once('cls_access.php');

$access=new Access($databasepath,$dbusername,$dbpassword);

print_r($access->getlist("SELECT TOP 5 * FROM `Result` WHERE `ResultNo` < 12 ORDER BY `ResultNo` DESC"));

echo $access->num_rows("update `conner` set `connerip` = '222.35.142.101' where `connerno` < 83");

========================

*/



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);

    if(!$this->link) echo "数据库连接失败!";

    return $this->link;

}



function query($sql){     //直接运行SQL,可用于更新、删除数据

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

}



function fetch_array($query){     //取得当前指针处记录

    return odbc_fetch_array($query);

}



function fetch_row($query){    //基本同fetch_array(),但只有数字索引

    return odbc_fetch_row($query);

}



function num_rows($sql){    //返回SQL查询影响到的行的数目

    return odbc_num_rows($this->query($sql));

}



function close(){    //关闭数据库连接函数

    odbc_close($this->link);

}



function getlist($sql){    //取得记录列表

    $query=$this->query($sql);

    $recordlist=array();

    while ($row=$this->fetch_array($query)){

        $recordlist[]=$row;

    }

    return $recordlist;

}

}
Copier après la connexion

这个类用的是ODBC,并不想网上说的要用ODBC数据源。我直接新建一个*.mdb文件就可以使用。

再附上部分常用COM方式操作Access代码:

$db = $_SERVER['DOCUMENT_ROOT'].'/zhuanti/ugdkfjlsg54356k6546jk654gfslkg6544s.mdb';

$conn = new COM('ADODB.Connection') or die('can not start Active X Data Objects');

$conn->Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=$db");
Copier après la connexion

JS调用页js.php

include_once('conn.php');

$rs = $conn->Execute("SELECT TOP 3 * FROM userstar where chk = 1 ORDER BY id DESC");

$idgb=1;

while(!$rs->EOF){

    $gbinf[$idgb]['id'] = $rs->Fields['id']->Value;

    $gbinf[$idgb]['usname'] = $rs->Fields['usname']->Value;

    $gbinf[$idgb]['usage'] = $rs->Fields['usage']->Value;

    $gbinf[$idgb]['usprovince'] = $rs->Fields['usprovince']->Value;

    $gbinf[$idgb]['usfile'] = $rs->Fields['usfile']->Value;

    $gbinf[$idgb]['thumb'] = $rs->Fields['thumb']->Value;

    $gbinf[$idgb]['usmessage'] = $rs->Fields['usmessage']->Value;

    $rs->MoveNext();

    $idgb++;

}

$rs->Close();

$rs = null;

$uhtml='';

$uhtml.='<table border="0" align="center"><tr>';

for ($i=1; $i<4; $i++){

    $uhtml.='<td width="240" align="center">';

    if ($gbinf[$i]['usfile']){

        $uhtml.='<a href="/index.php" target="_blank" title="'.$gbinf[$i]['usname'].'"><img  src="/static/imghw/default1.png"  data-src="/'.$gbinf[$i]['thumb'].'"  class="lazy".$gbinf[$i]['thumb'].'" / alt="PHP操作Access数据库类" ></a><br />'.$gbinf[$i]['usprovince'].' '.$gbinf[$i]['usname'];

        if ($gbinf[$i]['usage'] != 0){

            $uhtml.=' ('.$gbinf[$i]['usage'].'岁)<br />';

        }

       $uhtml.='<div style="width:180px; height:40px; overflow:hidden; text-align:left"><a href="/index.php" target="_blank" title="'.$gbinf[$i]['usmessage'].'" style="line-height:20px; font-size:12px">'.$gbinf[$i]['usmessage'].'</a></div>';

    }

    $uhtml.='</td>';

}

$uhtml.='</tr></table>';

echo "document.write('".$uhtml."')";

Copier après la connexion

又一段代码例子,以本文件路径确定数据库路径:

/*

===========================

数据库连接配置

*/

$db = getcwd().'\images\90d\90dicr_os6546oftff_ic543e_cces_4535s.mdb';

$conn = new COM('ADODB.Connection') or die('can not start Active X Data Objects');

$conn->Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=$db");

/*

===========================

*/

//print_r($_POST);

if ($_POST['name'] && $_POST['tel'] && $_POST['addr'] && $_POST['email'] && $_POST['goal'] && $_POST['high'] && $_POST['weight'] && $_POST['message'])

{

$addsql = "INSERT INTO d90usr (`name`, `tel`, `addr`, `email`, `goal`, `high`, `weight`, `message`) VALUES ('".$_POST['name']."', '".$_POST['tel']."', '".$_POST['addr']."', '".$_POST['email']."', '".$_POST['goal']."', '".$_POST['high']."', '".$_POST['weight']."', '".strip_tags($_POST['message'])."')";

//echo '<hr />'.$addsql;

$rsadd = $conn->Execute($addsql);

echo '<script type="text/javascript">alert("报名成功,请等待工作人员与您联系!");</script>';

echo '<p align="center"><h1 id="29f8444e8c2583f8d47c308266380cd6">恭喜您报名成功,请等待工作人员与您联系!</h1></p>';

echo '<p align="center"><a href="90d.php">返回活动首页</a>  <a href="/">返回商城首页</a></p>';

}
Copier après la connexion

 


Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds Tags

Free AI Presentation Maker

Free AI Presentation Maker

Outil d'IA pour créer facilement des présentations professionnelles.

PDFChatto

PDFChatto

Service de réponse à PDF propulsé par l'AI et de réponses aux questions.

AI PPT Maker

AI PPT Maker

AI PPT Maker est un fabricant de présentation IA gratuit qui vous permet de créer des présentations époustouflantes en quelques secondes avec Deepseek ou Chatgpt.

DeepSeek V3

DeepSeek V3

Solutions d'IA instantanées utilisant des modèles avancés en profondeur.

Image Translator / Manga translator

Image Translator / Manga translator

Outil AI pour traduire le texte en images sur plus de 100 langues.