《Mysql實(shí)例PHP5 mysqli的prepare準(zhǔn)備語(yǔ)句使用說(shuō)明》要點(diǎn):
本文介紹了Mysql實(shí)例PHP5 mysqli的prepare準(zhǔn)備語(yǔ)句使用說(shuō)明,希望對(duì)您有用。如果有疑問(wèn),可以聯(lián)系我們。
MYSQL實(shí)例mysqli對(duì)prepare的支持對(duì)于大訪問(wèn)量的網(wǎng)站是很有好處的,它極大地降低了系統(tǒng)開(kāi)銷,而且保證了創(chuàng)建查詢的穩(wěn)定性和安全性.prepare準(zhǔn)備語(yǔ)句分為綁定參數(shù)和綁定結(jié)果,下面將會(huì)一一介紹!
(1)綁定參數(shù)
看下面php代碼:
代碼如下:
<?php
//創(chuàng)建連接
$mysqli=new mysqli("localhost","root","","volunteer");
//檢查連接是否被創(chuàng)建
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
/*
* 創(chuàng)建一個(gè)準(zhǔn)備查詢語(yǔ)句:
* ?是個(gè)通配符,可以用在任何有文字的數(shù)據(jù)
* 相當(dāng)于一個(gè)模板,也就是預(yù)備sql語(yǔ)句
*/
if ($stmt = $mysqli->prepare("insert into `vol_msg`(mid,content) values(?,?)")){
/*第一個(gè)參數(shù)是綁定類型,"s"是指一個(gè)字符串,也可以是"i",指的是int.也可以是"db",
* d代表雙精度以及浮點(diǎn)類型,而b代表blob類型,第二個(gè)參數(shù)是變量
*/
$stmt->bind_param("is",$id,$content);
//給變量賦值
$id = "";
$content = "這是插入的內(nèi)容";
//執(zhí)行準(zhǔn)備語(yǔ)句
$stmt->execute();
//顯示插入的語(yǔ)句
echo "Row inserted".$stmt->affected_rows;
//下面還可以繼續(xù)添加多條語(yǔ)句,不需要prepare預(yù)編譯了
//關(guān)閉數(shù)據(jù)庫(kù)的鏈接
$mysqli->close();
}
?>
以上php實(shí)例運(yùn)行結(jié)果:
Row inserted:1
(2).綁定結(jié)果:綁定結(jié)果就是將你綁定的字段給php變量,以便必要時(shí)使用這些變量
請(qǐng)看下面的php代碼:
代碼如下:
<?php
//創(chuàng)建連接
$mysqli=new mysqli("localhost","root","","volunteer");
//設(shè)置mysqli編碼
mysqli_query($mysqli,"SET NAMES utf8");
//檢查連接是否被創(chuàng)建
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
//創(chuàng)建準(zhǔn)備語(yǔ)句
if ($stmt = $mysqli->prepare("select mid,content from `vol_msg`")){
//執(zhí)行查詢
$stmt->execute();
//為準(zhǔn)備語(yǔ)句綁定實(shí)際變量
$stmt->bind_result($id,$content);
//顯示綁定結(jié)果的變量
while($stmt->fetch()){
echo "第".$id."條: ".$content."<br />";
}
//關(guān)閉數(shù)據(jù)庫(kù)的鏈接
$mysqli->close();
}
?>
轉(zhuǎn)載請(qǐng)注明本頁(yè)網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/4741.html