PHP中的處理準備語句

用途

通常用在重複執行一個查詢,但是每次迭代使用的參數不同

分類

+綁定參數:一般用在INSERT,UPDATE,DELETE中
+綁定結果:一般用在SELECT語句中

使用方法

1.初始化stmt對象執行的語句

    $stmt=$mysqli->stmt_init();

2.準備執行語句

    $stmt=prepare($query);

3.執行準備語句

    $stmt->execute();

4.回收準備語句資源

    $stmt->close()

5.綁定參數

    $stmt->bind_param(String types,var1,....)

        *ps:type有d(double/float),i(integer),b(blob),s(ohter)*

6.綁定結果(綁定變量)

    $stmt->bind_result(var1,....);

7.從準備語句獲取每行,並將相應字段賦給綁定結果

    $stmt->fetch();

例子

綁定變量

<?php
//新建服務器連接
$mysqli=new mysqli('localhost','user','123456','test');

//創建查詢以及相應的佔位符(?)
$query="INSERT INTO table SET var1=?,var2=?,var3=?";

//創建語句對象
$stmt=$mysqli->stmt_init();

//爲執行準備語句
$stmt->prepare($query);

//綁定參數
$stmt->bind_param("ssd",$var1, $var2,$var3);

//定義$var1,$var2,$var3三個變量;

//執行準備語句
$stmt->execute();

//恢復語句資源
$stmt->close();

//關閉連接
$mysqli->close();

綁定結果

<?php
//新建服務器連接
$mysqli=new mysqli('localhost','user','123456','test');

//創建查詢以及相應的佔位符(?)
$query="SELECT var1,var2,var3 FROM table";

//創建語句對象
$stmt=$mysqli->stmt_init();

//爲執行準備語句
$stmt->prepare($query);

//執行語句
$stmt->execute();

//綁定結果參數
$stmt->bind_result($var1, $var2,$var3);

//循環處理結果並輸出數據
while($stmt->fetch())
    echo $var1.$var2,$var3;

//恢復語句資源
$stmt->close();

//關閉連接
$mysqli->close();
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章