PDO改造php数据库管理类
2014-01-07 17:05
232 查看
虽然说开发的项目供内部使用可是却很容易暴露一些sql注入的麻烦。。为了保证系统的安装性同时使用PDO可以方便的进行预处理和调用不同数据库
驱动因此决定改造原来的php数据库管理类:给出大概的代码以供以后参考。。。
驱动因此决定改造原来的php数据库管理类:给出大概的代码以供以后参考。。。
include "db.config.php"; /** * Description of DBManager * 数据库连接类 * @author Wujindou */ class DBManager { private $conn=null; public static $instance = null; public function __construct(){ try{ $this->conn = new PDO('mysql:host=172.16.89.85;dbname=order_db',DB_USER,DB_PASSWORD); $this->conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $this->conn->query("set names utf8"); }catch(PDOException $e){ echo 'Connection failed: ' . $e->getMessage(); } } public static function getInstance(){ if(is_null(self::$instance)){ self::$instance =new DBManager(); } return self::$instance; } public function executeSql($sql=null){ return $this->conn->query($sql); } public function insertData($sql){ $this->conn->query($sql) or die(mysql_error()); } public function selectSql($psmt,$params =array()){ $stmt = $this->conn->prepare($psmt); $stmt->execute($params); return $stmt; } }简单调用方法:
include "DBManager.php"; $param = xxxx; $dbm = DBManager::getInstance(); $sql = "select 。。。。from xxxxx fild>=??"; $result = $dbm->selectSql($sql,array($param)); echo "<pre>"; if($result->rowCount()){ while($row = $result->fetch()){ print_r($row); //array_push($return_data,$row['data']); } }感觉这么封装还是不够好。。。扩展性不足。。。有好的办法会接着添加。。
相关文章推荐
- PHP中PDO数据库操作类
- PHP程序中使用PDO对象实现对数据库的增删改查操作的示例代码
- php PDO面向对象的方式连接数据库
- php使用pdo操作数据库时出现ERROR:could not find driver的解决方法
- php pdo 链接数据库
- 一个关于php使用pdo方式进行数据库连接和处理的类
- php中数据库连接方式pdo和mysqli对比分析
- PHP学习 PDO连接数据库和设备常量的操作
- php操作数据库PDO
- PHP 在5.1.* 和5.2.*之间 PDO数据库操作中的不同之处小结
- PHP从数据库中取得数据并放入数组(PDO)
- [实例]php中PDO方式实现数据库的增删改查
- PHP学习笔记【二】之《数据库抽象层PDO---PDO连接数据库》
- php大力力 [050节] 兄弟连高洛峰 PHP教程 2014年[数据库、PDO教程]
- php pdo 连接db2 数据库
- postgresql数据库的安装及php的pgsql和pdo_pgsql的安装
- PHP学习 PDo查询数据库
- PHP PDO类解决数据库连接问题
- PHP使用PDO连接数据库could not find driver解决方法
- php使用PDO连接操作数据库