多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > php pdo 簡單使用 (一)

php pdo 簡單使用 (一)

來源:程序員人生   發布時間:2015-08-05 07:40:42 閱讀次數:3805次

簡介:

PDO擴大為PHP訪問數據庫定義了1個輕量級的、1致性的接口,它提供了1個數據訪問抽象層,這樣,不管使用甚么數據庫,都可以通過1致的函數履行查詢和獲得數據。

即提供了1個數據庫訪問抽象層能使得我們通過1致的函數和寫法來操作不同數據庫,有益于往后對數據庫的遷移,固然也有安全方面的提升。


對照:

php 操作數據庫以mysql 為例經常使用的方法有 php_mysql , php_mysqli , pdo

1.php_mysql 和 php_mysqli 都是不可以移植的,只能利用于mysql 數據庫, 而pdo 是可以輕易移植的。

2.php_mysql 是我們初學php 學的操作數據庫的函數,但是其實他基本上很少使用了,其中最重要的1點就是容易造成安全問題。

    存在SQL注入,因而php 提供了函數mysql_real_escape_string 如果存在很多的變量每個都要經過 mysql_real_escape_string

    反而變的很麻煩。

3.pdo 支持預處理,預處理功能可以有效的避免sql注入,并提高效力。

4.php_mysqli 和 pdo 都支持面向對象。

5.pdo 長連接方式性能上優于php_mysqli (參考網上資料)

php_mysql 方式優勢已不大了,php_mysqli 最致命的就是不能移植到其它數據庫,除非你很肯定不會更換數據庫。明顯 pdo方式連接數據庫將會是1種趨勢。


pdo簡單操作數據庫

首先php 要啟用php-pdo 相干擴大

<?php $dbType = 'mysql'; $dbUser = 'root'; $dbPass = 'simael'; $dbhost = 'localhost'; $dbName = 'pdotest'; $dsn="$dbType:host=$dbhost;dbname=$dbName"; try{ $pdo = new PDO($dsn, $dbUser, $dbPass); echo "PDO成功連接MySQL數據庫!"; }catch(PDOException $exception){ echo $exception->getMessage(); }

插入 數據

<?php //$pdo->query('set names utf8'); $sql = "INSERT INTO la_comments SET nick_name='formPdo',email='pdo@pdo.com',comment='中文comment',page_id='11',created_at=NOW(),updated_at=NOW()"; $res1 = $pdo->exec($sql); var_dump($res1);

此時去數據庫看到中文 多是亂碼,是由于編碼問題各種錯亂的緣由

添加代碼

$pdo->query('set names utf8');
數據存儲仍存在毛病,是由于有可能你的header 是gbk 編碼

網上總結的 編碼需要注意的問題以下:

1、服務端程序聲明編碼,比如header("Content-type: text/html; charset=utf⑻");
2、客戶端聲明編碼,比如 <META http-equiv="content-type" content="text/html; charset=utf⑻">
3、數據庫編碼、表和字段的編碼
4、文件本身編碼屬性
5、連接數據庫時請聲明編碼,比如$pdo->query('set names utf8');

只要上述都1致了編碼問題1般都會解決的。

完全示例代碼:(文件本身也應當使用utf8 編碼)

<?php header("Content-type: text/html; charset=utf⑻"); <pre name="code" class="php">$dbType = 'mysql'; $dbUser = 'root'; $dbPass = 'simael'; $dbhost = 'localhost'; $dbName = 'pdotest'; $dsn="$dbType:host=$dbhost;dbname=$dbName"; try{ $pdo = new PDO($dsn, $dbUser, $dbPass,array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES'utf8';")); //$pdo = new PDO($dsn, $dbUser, $dbPass); echo "PDO成功連接MySQL數據庫!"; }catch(PDOException $exception){ echo $exception->getMessage(); } $pdo->query('set names utf8'); $sql = "INSERT INTO la_comments SET nick_name='formPdo',email='pdo@pdo.com',comment='中文comment',page_id='11',created_at=NOW(),updated_at=NOW()"; $res1 = $pdo->exec($sql); var_dump($res1); $sql = "SELECT * FROM la_comments"; $res2 = $pdo->query($sql); while($row = $res2->fetch()){ print_r($row); echo '<br>'; } $pdo = null; ?>











生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 午夜一级做a爰片久久毛片 午夜一区二区三区 | 国产精品亚洲欧美日韩久久 | 亚洲视频在线观看网站 | 成人福利社区 | 伊人黄色片 | 国产孕妇色xxxxx | 在线精品福利 | 日本高清无吗 | 欧美做爰gif动态图一区二区 | 亚洲另类网 | 国产色妇 | 亚洲图片自拍偷拍 | 最新日本免费一区二区三区中文 | 欧美成人看片一区二区三区尤物 | 精品无人乱码一区二区三区 | 18女人水真多免费高清毛片 | 国产精品久久久久影院免费 | 美女免费观看一区二区三区 | 最近中文字幕免费2019高清 | 亚洲欧洲国产精品久久 | h视频免费高清在线观看 | 久久精品国产网红主播图片 | 久久精品国产精品亚洲精品 | 亚洲成人福利在线观看 | 国产精品免费综合一区视频 | 国产人成亚洲第一网站在线播放 | 欧美性xxxx极品hd欧美 | 在线亚洲国产精品区 | 国产丰满眼镜女在线观看 | 日本aa大片 | 欧美黑人巨大性极品hd | 国产精品亚洲第一区二区三区 | 中文字幕在第10页线观看 | 一区二三区国产 | 亚洲一区二区三区夜色 | 欧美一级视频免费 | 免费爱爱视频 | 色综合小说久久综合图片 | 亚洲视频 中文字幕 | 99久久精品国产一区二区三区 | 午夜毛片在线观看 |