使用PDO连接数据库

PDO(PHP数据对象) 是一个轻量级的、具有兼容接口的PHP数据连接拓展,是一个PHP官方的PECL库,随PHP 5.1发布,需要PHP 5的面向对象支持,因而在更早的版本上无法使用。它所提供的数据接入抽象层,具有与具体数据库类型无关的优势,为它所支持的数据库提供统一的操作接口。目前支持多种数据库等。由于PDO是在底层实现的统一的数据库操作接口,因而利用它能够实现更高级的数据库操作,比如存储过程的调度等。

创建数据库配置文件config.php

<?php
define(‘DB_HOST‘,‘localhost‘);//常量,主机名
define(‘DB_USER‘,‘root‘);//连接数据库的用户名
define(‘DB_PWD‘,‘root‘);//连接数据库密码
define(‘DB_NAME‘,‘book‘);//数据库名称
define(‘DB_PORT‘,‘3306‘);//端口号
define(‘DB_TYPE‘,‘mysql‘);//数据库的类型
define(‘DB_CHARSET‘,‘utf8‘);//数据库的编码格式
define(‘DB_DSN‘,DB_TYPE.":host=".DB_HOST.";dbname=".DB_NAME.";charset=".DB_CHARSET);//定义PDO的DSN
?>

创建index.php文件,用于连接数据库,执行查询语句,并引入config.php文件

<?php
require "config.php";

try{
    //连接数据库,选择数据库
    $pdo = new PDO(DB_DSN,DB_USER,DB_PWD);
} catch (PDOException $e){
    //输出异常信息
    echo $e->getMessage();
}

$query = "select * from books where id=?";//sql语句
$sth = $pdo->prepare($query);//准备执行
$sth->execute(array(1));//执行查询语句,并返回结果集

//var_dump($sth->fetchColumn(1));
//var_dump($sth->fetchColumn(1));
//$res = $sth->fetch(PDO::FETCH_OBJ);
include("lists_02.html");

创建list.html文件,显示查询信息。

<!DOCTYPE html>
<html lang="en" class="is-centered is-bold">
<head>
    <meta charset="UTF-8">
    <title>连接数据库</title>
    <link href="css/bootstrap.css" rel="stylesheet">
    <style>
        #name,#id{
            width: 200px;
            margin-top: 10px;
        }
    </style>
</head>
<body>
<div class="container" style="padding-top: 20px">
    <div class="col-sm-offset-2 col-sm-8">
        <div class="panel panel-default">
            <div class="panel-heading">
                图书列表
            </div>
            <div class="panel-body">
                <table class="table table-striped task-table">
                    <thead>
                        <tr>
                            <th>ID</th>
                            <th>书姓</th>
                            <th>作者</th>
                            <th>价格</th>
                            <th>出版日期</th>
                            <th>操作</th>
                        </tr>
                    </thead>
                    <tbody>
                        <!--$getData数组的值也是数组-->
                        <?php while ($res = $sth->fetch(PDO::FETCH_OBJ)){ ?>
                        <tr>
                            <td class="table-text">
                                <?php echo $res->id ?>
                            </td>
                            <td class="table-text">
                                <?php echo $res->name ?>
                            </td>
                            <td class="table-text">
                                <?php echo $res->author ?>
                            </td>
                            <td class="table-text">
                                <?php echo $res->price ?>
                            </td>
                            <td class="table-text">
                                <?php echo $res->publishDate ?>
                            </td>
                            <td class="table-text">
                                <button type="button" class="btn btn-primary">编辑</button>
                                <button type="button" class="btn btn-danger">删除</button>
                            </td>
                        </tr>
                        <?php } ?>
                    </tbody>
                </table>
            </div>

        </div>
    </div>
</div>
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
</body>
</html>

原文地址:https://www.cnblogs.com/bushui/p/11519205.html

时间: 2024-10-10 16:21:53

使用PDO连接数据库的相关文章

MySQL_PHP学习笔记_2015_0907_PHP用pdo连接数据库时报错 could not find driver

环境: Windows, zend studio 错误信息: could not find driver   第一想到的办法还是百度--   下面是解决办法: 由于PHP默认的设置中, php_pdo_mysql模块是关闭的, 所以才会报could not find driver的错误; 把这个模块打开, 重启apache. 摘自互联网:pdo 连接数据库 报错 could not find driver 解决方法

PHP5中使用PDO连接数据库

PDO  如何连接 new PDO("mysql:host=localhost;dbname=php100","root", “ "); 默认这个不是长连接,如果需要数据库长连接,需要最后加一个参数: array(PDO::ATTR_PERSISTENT => true) 变成这样: new PDO(“连接信息”, 'root', '', array(PDO::ATTR_PERSISTENT => true)); PDO 常用方法及其使用 PD

【转】php pdo连接数据库 解决中文乱码问题(wordpress mysql 问号?? ??)

原文链接:http://blog.csdn.net/ysydao/article/details/11002295 PHP 用pdo连接数据库时出现中文乱码问题解决办法 1.array(PDO::MYSQL_ATTR_INIT_COMMAND => "set names utf8"),在与数据库建立连接的时候的第四个参数   example:        $dbh = new PDO($dsn,$user,$pass,array(PDO::MYSQL_ATTR_INIT_COM

PDO连接数据库及DSN详解

PDO构造函数 在PDO中,要建立与数据库的连接需要实例化PDO的构造函数,PDO构造函数的语法如下: __construct(string $dsn[,string $username[,string $password[,array $driver_options]]]) 参数说明如下 dsn:数据源名,包括主机名,端口号和数据库名称. username:连接数据库的用户名 password:连接数据库的密码 driver_options:连接数据库的其他选项 例如: $dbms='mysq

php PDO连接数据库

[PDO是啥] PDO是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接和处理,什么 php_mysql.dll.php_pgsql.dll.php_mssql.dll.php_sqlite.dll等等扩展来连接MySQL.PostgreSQL.MS SQL Server.SQLite,同样的,我们必须借助 ADOdb.PEAR::DB.PHPlib::DB之类的数据库抽象类来帮助我们,无比烦琐和低效,毕竟,php代码的效率怎么能够

PHP5中使用PDO连接数据库的方法

PDO(PHP Data Object) 是PHP 5 中加入的东西,是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接和处理,php_mysql.dll.php_pgsql.dll.php_mssql.dll.php_sqlite.dll等等. 1.PDO简介 PDO(PHP Data Object) 是PHP 5 中加入的东西,是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个

封装PDO连接数据库代码

废话不说直接上代码: 1 <?php 2 class DB 3 { 4 protected static $_connect; 5 protected $dsn, $pdo; 6 protected $_data, $_count, $_lastInsertId; 7 8 /** 9 * 构造函数 10 * 11 * @return DB 12 */ 13 private function __construct($dbHost, $dbUser, $dbPasswd, $dbName, $db

PDO连接数据库

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

pdo 连接数据库 报错 could not find driver 解决方法

在windows 下,调试一个PHP程序时,报了这个错误, could not find driver 原来我的这个程序中用到了PDO对象, 连接mysql 5.  在PHP的默认设置中,只打开了php_pdo 模块, 没有打开php_pdo_mysql模块.所以才会出现找不到驱动程序的错误. 把这个模块打开,重启apache就可以了. 当然了,如果你用别的数据库,打开对应的模块就OK了. extension=php_pdo_mysql