程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> [轉載]PDO防注入原理分析以及使用PDO的注意事項,pdo注意事項

[轉載]PDO防注入原理分析以及使用PDO的注意事項,pdo注意事項

編輯:MySQL綜合教程

[轉載]PDO防注入原理分析以及使用PDO的注意事項,pdo注意事項


本文全部內容轉載自月影無痕的博客http://zhangxugg-163-com.iteye.com/blog/1835721#bc2346092,感謝作者的分享

合理正確使用PDO,可以基本上防止SQL注入的產生,本文主要回答以下兩個問題:

a、為什麼要使用PDO而不是mysql_connect?

b、為何PDO能防注入?

c、使用PDO防注入的時候應該特別注意什麼?

一、為何要優先使用PDO?

提高相同SQL模板查詢性能

阻止SQL注入

二、為何PDO能防SQL注入?

為了徹底搞清楚php與mysql server通訊的細節,作者特別使用了wireshark抓包進行研究之。

三、使用PDO的注意事項

1、若使用php 5.3.6+, 請在在PDO的DSN中指定charset屬性

DSN中指定charset的作用是什麼? 只是告訴PDO, 本地驅動轉義時使用指定的字符集(並不是設定mysql server通信字符集),設置mysql server通信字符集,還得使用set names <charset>指令。

2、如果使用了PHP 5.3.6及以前版本,設置PDO::ATTR_EMULATE_PREPARES參數為false(即由MySQL進行變量處理);因Yii框架默認並未設置ATTR_EMULATE_PREPARES的值,請在數據庫配置文件中指定emulatePrepare的值為false。


PHP使用預處理PDO可以防止注入

可以用pdo進行預處理可以有效防止sql注入bgim
 

php中的pdo問題

說的面有點大了,安全這塊不光是SQL能做全的!
用PDO也要防SQL注入,你要對你用戶的輸入做檢查!!!!象單引號
php裡也有幾個方法也能用!也沒法告訴你全,看看資料吧,教程裡面一般都會說到這些的!
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved