php在数据库抽象层简单使用PDO的方法
本文实例讲述了php在数据库抽象层简单使用PDO的方法。分享给大家供大家参考,具体如下:
测试代码如下:
<?php
/**************************
@Filename:pdotest.php
@Content:PDO操作MySQL,Access(测试)
**************************/
if($_GET['db']=='mysql')
{
$dns='mysql:host=localhost;dbname=test';
$dbuser='root';
$dbpass='root';
$db=newPDO($dns,$dbuser,$dbpass);
}
else
{
$db=newPDO("odbc:Driver={MicrosoftAccessDriver(*.mdb)};Dbq=".getcwd()."//test.mdb");
}
if($_POST['reg'])
{
$db->exec("INSERTINTOt_user(name,email)VALUES('".$_POST['name']."','".$_POST['email']."');");
//header('Location:'.$_SERVER['PHP_SELF']);
?>
<ahref="pdotest.php">返回</a>
<?
}
else
{
$html='
<divid="new">
<formaction="'.$_SERVER['REQUEST_URI'].'"method="post">
Name:<inputtype="text"name="name"size="10"/>
Email:<inputtype="text"name="email"size="15"/>
<inputtype="submit"name="reg"value="Register"/>
</form>
</div>
';
$re=$db->query("SELECTuid,name,emailFROMt_userORDERBYemail;");
while($rs=$re->fetch())
{
$userlisthtml.='
<tr><td>'.$rs['uid'].'</td><td>'.$rs['name'].'</td><td>'.$rs['email'].'</td></tr>';
}
$html.='
<divid="list">
<tableborder="1">
<caption>UserList</caption>
<thead>
<tr><th>ID</th><th>Name</th><th>Email</th></tr>
</thead>
<tbody>'.$userlisthtml.'
</tbody>
</table>
</div>
';
}
echo$html;
?>
测试环境:
php.ini文件: 打开 extension=php_pdo_odbc.dll 去掉分号打开aceess数据库驱动
mysql默认打开的
访问路径:
mysql数据库
http://192.168.1.21/lava_guess2009/test/pdo/pdotest.php?db=mysql
aceess数据库
http://192.168.1.21/lava_guess2009/test/pdo/pdotest.php
特点: 使用不同数据库只要改动连接驱动即可,代码不用作任何改变,也就是抽象层的好处.
希望本文所述对大家php程序设计有所帮助。