php中bind_param()函數(shù)用法分析
本文實(shí)例講述了php中bind_param()函數(shù)用法。分享給大家供大家參考,具體如下:
從字面上不難理解,綁定的參數(shù);下面我通過(guò)一個(gè)綁定參數(shù)的例子講一下:
for example:
bind_param("sss", firstname,lastname, $email);
1. 該函數(shù)綁定了 SQL 的參數(shù),且告訴數(shù)據(jù)庫(kù)參數(shù)的值。 "sss" 參數(shù)列處理其余參數(shù)的數(shù)據(jù)類(lèi)型。s 字符告訴數(shù)據(jù)庫(kù)該參數(shù)為字符串。
參數(shù)有以下四種類(lèi)型:
i - integer(整型)
d - double(雙精度浮點(diǎn)型)
s - string(字符串)
b - BLOB(布爾值)
每個(gè)參數(shù)都需要指定類(lèi)型。
通過(guò)告訴數(shù)據(jù)庫(kù)參數(shù)的數(shù)據(jù)類(lèi)型,可以降低 SQL 注入的風(fēng)險(xiǎn)。
2. 上面的firstname,lastname, $email傳的是引用,在php5.3之后是不能直接寫(xiě)成字符串的,為了驗(yàn)證這個(gè)結(jié)論,在此我寫(xiě)了一段測(cè)試,如下:
$servername="localhost";
$username="root";
$password="admin";
$dbname="test";
$conn=new mysqli($servername,$username,$password,$dbname);
if($conn->connect_error){
die("connected failed:".$conn->connect_error);
}
$sql="INSERT INTO user(user_first,user_last,age)VALUES(?,?,?)";
$stmt=$conn->prepare($sql);
$stmt->bind_param("sss","xiao","hong",22);
$stmt->execute();
echo "News records created successfully!";
$stmt->close();
$conn->close();
上面我寫(xiě)了一段將參數(shù)直接寫(xiě)成字符串的測(cè)試程序,運(yùn)行之后彈出:

最后我將程序改寫(xiě)為如下:
$servername="localhost";
$username="root";
$password="password";
$dbname="test";
$conn=new mysqli($servername,$username,$password,$dbname);
if($conn->connect_error){
die("Connect failed:".$conn->connect_error);
}
$sql="INSERT INTO user(user_first,user_last,age)VALUES(?,?,?)";
$stmt=$conn->prepare($sql);
$stmt->bind_param("sss",$user_first,$user_last,$age);
$user_first="xiao";
$user_last="hong";
$age=12;
$stmt->execute();
echo "News records created successfully!";
$stmt->close();
$conn->close();
而上面這段程序可以正常執(zhí)行.
PS:這里再為大家提供一個(gè)相關(guān)的php函數(shù)表供大家查詢參考:
php在線函數(shù)參考表:
http://tools.jb51.net/table/php_fun_table
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《php字符串(string)用法總結(jié)》、《php常用函數(shù)與技巧總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
- php中str_pad()函數(shù)用法分析
- PHP函數(shù)rtrim()使用中的怪異現(xiàn)象分析
- php 基礎(chǔ)函數(shù)
- php 常用的系統(tǒng)函數(shù)
- PHP date函數(shù)參數(shù)詳解
- php strstr查找字符串中是否包含某些字符的查找函數(shù)
- PHP 查找字符串常用函數(shù)介紹
- PHP中的排序函數(shù)sort、asort、rsort、krsort、ksort區(qū)別分析
- php中利用explode函數(shù)分割字符串到數(shù)組
- PHP函數(shù)篇詳解十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制轉(zhuǎn)換函數(shù)說(shuō)明
- PHP 字符串正則替換函數(shù)preg_replace使用說(shuō)明
- PHP中isset()和unset()函數(shù)的用法小結(jié)
- PHP中函數(shù)rand和mt_rand的區(qū)別比較
相關(guān)文章
PHP中$_FILES的使用方法及注意事項(xiàng)說(shuō)明
本篇文章主要是對(duì)PHP中$_FILES的使用方法及注意事項(xiàng)進(jìn)行了介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-02-02
使ecshop模板中可引用常量的實(shí)現(xiàn)方法
據(jù)說(shuō)ecshop的模板類(lèi)是修改的smarty,不過(guò)個(gè)人感覺(jué)不是修改是完全重寫(xiě)了。它和smarty上只是模板標(biāo)簽上有相同的地方,同時(shí)閹割了很多功能2011-06-06
解析PHP SPL標(biāo)準(zhǔn)庫(kù)的用法(遍歷目錄,查找固定條件的文件)
本篇文章是對(duì)PHP中SPL標(biāo)準(zhǔn)庫(kù)的用法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
php下intval()和(int)轉(zhuǎn)換使用與區(qū)別
想知道使用intval()和(int)轉(zhuǎn)換有什么區(qū)別?或者說(shuō)兩者有什么不同,包括功能、定義方面的。或者和使用頻率、效率等。2008-07-07
基于PHP實(shí)現(xiàn)一個(gè)簡(jiǎn)單的在線聊天功能
這篇文章主要介紹了基于PHP實(shí)現(xiàn)一個(gè)簡(jiǎn)單的在線聊天功能,對(duì)類(lèi)似功能感興趣的同學(xué),要著重看一下2021-04-04
PHP實(shí)現(xiàn)生成帶背景的圖形驗(yàn)證碼功能
這篇文章主要介紹了PHP實(shí)現(xiàn)生成帶背景的圖形驗(yàn)證碼功能,結(jié)合實(shí)例形式詳細(xì)分析了php生成帶背景的圖形驗(yàn)證碼操作相關(guān)步驟與操作技巧,需要的朋友可以參考下2016-10-10
PHP實(shí)現(xiàn)字符串大小寫(xiě)轉(zhuǎn)函數(shù)的功能實(shí)例
這篇文章主要給大家介紹了關(guān)于利用PHP如何實(shí)現(xiàn)字符串大小寫(xiě)轉(zhuǎn)函數(shù)功能的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友一起來(lái)看看啊2019-02-02
解析關(guān)于java,php以及html的所有文件編碼與亂碼的處理方法匯總
本篇文章是對(duì)關(guān)于java,php以及html的所有文件編碼與亂碼的處理方法進(jìn)行了詳細(xì)的總結(jié)與介紹,需要的朋友參考下2013-06-06

