PDO

PDO 數據訪問抽象層
dsn 數據源
特色 1.帶有事務功能
$dsn="mysql:host=localhost;dbname=zxpm";
//造pdo對象
$pdo=new PDO($dsn,"root","");
//設置爲異常模式
$pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION ); mysql

try
{
//啓動事務
$pdo->beginTransaction();
//寫sql語句
$sql="insert into nation values('n005','藏族')";
//執行sql語句
$a=$pdo->exec($sql);
$pdo->commit();
}
catch(PDOException $e)
{
//echo $e->getMessage();
//回滾事務
$pdo->rollBack();
}sql

啓動事務和回滾事務之間的語句若是有錯誤就回滾,至關於不執行數組

2.能夠防止sql注入攻擊
$dsn="mysql:host=localhost;dbname=zxpm";
$pdo=new PDO($dsn,"root","");
$sql="insert into nation values(?,?)";//?表明站位符
//將一條sql語句放到服務器等待執行
$stm=$pdo->prepare($sql);
//綁定參數,給站位符
/*$stm->bindParam(1,$code);
$stm->bindParam(2,$name);
//給變量賦值
$code="n006";
$name="傣族";*/
$attr=array("n007","土家");//簡單方法
//執行預處理語句,執行成功,返回true,失敗返回false
if($stm->execute($attr))
{
//var_dump($stm->fetch());
//var_dump($stm->fetchAll(PDO::FETCH_ASSOC));
}服務器

另一種方法fetch

$dsn="mysql:host=localhost;dbname=zxpm";
$pdo=new PDO($dsn,"root","");
$sql="insert into nation values(:code,:name)";//:表明站位符
//將一條sql語句放到服務器等待執行
$stm=$pdo->prepare($sql);
//綁定參數,給站位符
/*$stm->bindParam(1,$code);
$stm->bindParam(2,$name);
//給變量賦值
$code="n006";
$name="傣族";*/
$attr=array("code"=>"n008","name"=>"獸族");//關聯數組
//執行預處理語句,執行成功,返回true,失敗返回false
if($stm->execute($attr))
{
//var_dump($stm->fetch());
//var_dump($stm->fetchAll(PDO::FETCH_ASSOC));
}code

相關文章
相關標籤/搜索