Home >Backend Development >PHP Tutorial >How to simply use PDO in php database abstraction layer_php tips

How to simply use PDO in php database abstraction layer_php tips

WBOY
WBOYOriginal
2016-05-16 20:05:19962browse

The example in this article describes how PDO simply uses PDO in the database abstraction layer. Share it with everyone for your reference, the details are as follows:

The test code is as follows:

<&#63;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']);
  &#63;>
  <a href="pdotest.php">返回</a>
  <&#63;
}
else
{
  $html = '
<div id="new">
  <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 id="list">
  <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;
&#63;>

Test environment:

php.ini file: Open extension=php_pdo_odbc.dll Remove the semicolon and open the aceess database driver

mysql is opened by default

Access path:

mysql database

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

aceess database

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

Features: To use different databases, you only need to change the connection driver, and the code does not need to be changed in any way, which is the benefit of the abstraction layer.

I hope this article will be helpful to everyone in php programming.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn