php adodb参数化查询,PHP使用ADOdb类库操作数据库的类封装

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

adodb5下载地址»http://sourceforge.net/projects/adodb/files/adodb-php5-only/✔

下载好的adodb文件夹放在程序根目录下。

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

conn下的found.database.php文件

//数据库连接类

class ConnDB{

var $dbtype;    //数据库连接类型

var $host;        //数据库服务器

var $user;        //服务器用户名

var $pwd;        //服务器密码

var $dbname;    //数据库名称

var $debug;        //返回错误信息

var $conn;        //返回的连接标识

var $coded;        //数据库的编码格式

//构造函数,为成员变量赋值

function __construct($dbtype, $host, $user, $pwd, $dbname, $debug = false){

$this->dbtype = $dbtype;

$this->host = $host;

$this->user = $user;

$this->pwd = $pwd;

$this->dbname = $dbname;

$this->debug = $debug;

$this->coded = "set names utf";

}

//实现与不同数据库的连接并返回连接对象

function GetConnId(){

//调用ADODB类库文件

require("adodb5/ADOdb.inc.php");

//判断成员变量传递的数据库类型

if($this->dbtype == "mysql" || $this->dbtype == "mssql"){

//判断如果是MySQL数据库

if($this->dbtype == "mysql")

//执行与MySQl数据库的连接

$this->conn = NewADOConnection("mysql");

else

$this->conn = NewADOConnection("mssql");

//数据库连接的用户、密码

$this->conn->Connect($this->host,$this->user,$this->pwd,$this->dbname);

}elseif($this->dbtype == "access"){

//判断如果使用的是Access数据库

$this->conn = NewADOConnection("access");

//执行连接Access数据库

$this->conn->Connect("Driver={Microsoft Access Driver (*.mdb)};Dbq=".$this->dbname.";Uid=".$this->user.";Pwd=".$this->pwd.";");

}

//设置数据库的编码格式

$this->conn->Execute($this->coded);

if($this->dbtype == "mysql")

$this->conn->debug = $this->debug;

//返回连接对象

return $this->conn;

}

//定义关闭数据库的方法

function CloseConnId(){

//执行关闭的操作

$this->conn->Disconnect();

}

}

//数据库管理类

class AdminDB{

//定义方法,参数为SQl语句和连接数据库返回的对象

function ExecSQL($sqlstr, $conn){

//截取SQL中的前6个字符串,并转换成小写

$sqltype = strtolower(substr(trim($sqlstr),0,6));

//执行SQL语句

$rs = $conn->Execute($sqlstr);

//判断如果SQL语句的类型为SELECT

if($sqltype == "select"){

//执行该语句,获取查询结果

$array = $rs->GetRows();

//判断语句是否执行成功

if(count($array)==0 || $rs==false)

//如果查询结果为0,或者执行失败,则返回false

return false;

else

//否则返回查询结果的数组

return $array;

}elseif ($sqltype=="update" || $sqltype=="insert" || $sqltype=="delete"){

//判断如果SQL语句类型不为select、则执行如下操作

if($rs)

//执行成功返回true

return true;

else

//否则返回false

return false;

}

}

}

?>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

conn下的connect.database.php文件:

//包含类文件

require("found.database.php");

//实例化数据库连接类

$connobj = new ConnDB("mysql", "localhost", "root", "48102249", "nodedb", true);

//返回连接标识

$conn = $connobj->GetConnId();

$admindb = new AdminDB();

if(!$conn->_errorMsg){

echo "数据库连接成功";

}else{

echo "数据库连接失败";

}

?>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

根目录下的index.php文件:

//包含数据库连接和操作类的实例化文件

include_once 'conn/connect.database.php';

//$admindb->ExecSQL("insert into news (title,dates,contents) value('测试','".date('Y-m-d')."','测试测试测试测试测试测试')", $conn);

$array = $admindb->ExecSQL("select * from news where id limit 3", $conn);

for($i=0;$i

echo $array[$i][id].'——'.$array[$i][title].'——'.$array[$i][contents]."
";

//var_dump($array[$i]['id']);

}

?>

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

小奋斗文章

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值