阅读619 返回首页    go 阿里云 go 技术社区[云栖]


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 =  new PDO($dns,$dbuser,$dbpass);
}
else
{
    $db = new PDO("odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=".getcwd()."//test.mdb");
}

if($_POST['reg'])
{
    $db->exec("INSERT INTO t_user (name,email) VALUES ('".$_POST['name']."','".$_POST['email']."') ;");
   // header('Location:'.$_SERVER['PHP_SELF']);
  
   ?>
   <a href="pdotest.php">返回</a>
   <?
}
else
{
    $html = '
<div >
    <form action="'.$_SERVER['REQUEST_URI'].'" method="post">
     Name: <input type="text" name="name" size="10" />
    Email: <input type="text" name="email" size="15" />
    <input type="submit" name="reg" value="Register" />
    </form>
</div>
';
    $re = $db->query("SELECT uid,name,email FROM t_user ORDER BY email ;");
    while($rs = $re->fetch())
    {
        $userlisthtml .= '
<tr><td>'.$rs['uid'].'</td><td>'.$rs['name'].'</td><td>'.$rs['email'].'</td></tr>';
    }

    $html .= '
<div >
    <table border="1">
    <caption>User List</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数据库

https://192.168.1.21/lava_guess2009/test/pdo/pdotest.php?db=mysql 


aceess 数据库

https://192.168.1.21/lava_guess2009/test/pdo/pdotest.php

 

 

 

特点:  使用不同数据库只要改动连接驱动即可,代码不用作任何改变,也就是抽象层的好处.

最后更新:2017-04-02 00:06:46

  上一篇:go 打造自己的checkinstall
  下一篇:go DataGrid模板列的CheckBox事件定义方法