<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                [TOC] >[success]PDO擴展為PHP訪問數據庫定義了一個輕量級的、一致性的接口,它 提供了一個數據訪問抽象層,這樣,無論使用什么數據庫,都可以通 過一致的函數執行查詢和獲取數據。PDO隨PHP5.1發行 PHP通過PDO擴展動態加載相應的數據庫驅動程序來完成直接操作各 種數據庫,所以在使用PDO時要明確告知所要使用的數據庫驅動 ## 查看是否支持 通過phpinfo()查看是否成功加載 >[danger]注意:如果沒加載,可以去php.ini看是否開啟該擴展,如果前面有分號去掉。 注意:如果沒有該擴展,百度"php pdo擴展安裝",有很多場景下的解決方案。 ## pdo的使用 ### 通過PDO連接MYSQL ~~~ $db = new PDO("dbtype:host=yourhost;dbname=yourdbname;charset=utf8","username","password"); ~~~ 通過PDO類產生一個連接對象 ### 發送執行sql(針對select) ~~~ PDO::query ( string $statement ) ~~~ 通過查詢,返回一個結果集對象 ### 發關操作sql(針對UPDATE,DELETE,INSERT) ~~~ int PDO::exec ( string $statement ) ~~~ 執行一條 SQL 語句,并返回受影響的行數 ### 取結果集中的數據 ~~~ $result->fetchAll(PDO::FETCH_ASSOC)只得到關聯方式的數據 $result->fetchAll(PDO::FETCH_NUM)得到索引表示記錄 $result->fetchAll(PDO::FETCH_BOTH)得到關聯與索引表示的數據 $result->fetchAll(PDO::FETCH_OBJ)得到以對象形式表示的數據 $result->fetch($type)從結果集中獲取下一行 ~~~ ### 錯誤代碼 ~~~ mixed PDO::errorCode ( void ) ~~~ 獲取跟數據庫句柄上一次操作相關的 SQLSTATE ### 錯誤信息 ~~~ public array PDO::errorInfo ( void ) ~~~ 獲取跟數據庫句柄上一次操作錯誤信息 ### 自增id ~~~ string PDO::lastInsertId ([ string $name = NULL ] ) ~~~ 返回最后插入行的ID或序列值 **完整實例** ~~~ Excute query with secure data ============================== <?php try{ $db = new PDO("dbtype:host=yourhost;dbname=yourdbname;charset=utf8","username","password"); $mysecuredata=14; $db->query("Select * from table where id=".$mysecuredata); }catch(PDOException $e ){ echo "Error: ".$e; } ?> Excute query with insecure data ============================== <?php try{ $db = new PDO("dbtype:host=yourhost;dbname=yourdbname;charset=utf8","username","password"); $myinsecuredata=$_GET["id"]; $query=$db->prepare("Select * from table where id=?"); $query->excute(array($myinsecuredata)); }catch(PDOException $e ){ echo "Error: ".$e; } ?> ~~~ ## Pdo預準備 >[success]預計準備的目的與mysqli預準備的是一樣的,可以減少解析次數和防注入 **實例** ~~~ <?php /* 通過綁定的 PHP 變量執行一條預處理語句,*/ /*執行一條使用命名占位符的預處理語句 */ $calories = 150; $colour = 'red'; $sth = $dbh->prepare('SELECT name, colour, calories FROM fruit WHERE calories < :calories AND colour = :colour'); $sth->bindParam(':calories', $calories, PDO::PARAM_INT); $sth->bindParam(':colour', $colour, PDO::PARAM_STR, 12); $sth->execute(); ?> <?php /* 通過綁定的 PHP 變量執行一條預處理語句*/ /*執行一條使用問號占位符的預處理語句*/ $calories = 150; $colour = 'red'; $sth = $dbh->prepare('SELECT name, colour, calories FROM fruit WHERE calories < ? AND colour = ?'); $sth->bindParam(1, $calories, PDO::PARAM_INT); $sth->bindParam(2, $colour, PDO::PARAM_STR, 12); $sth->execute(); ?> ~~~ >[danger]練習:通過Pdo類,開發一個自己的操作數據庫的類 Model.class.php
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看