php中轉(zhuǎn)義mysql語(yǔ)句的實(shí)現(xiàn)代碼
更新時(shí)間:2011年06月24日 22:21:43 作者:
如果你需要向數(shù)據(jù)庫(kù),插入形如’你好’,這樣包含有單引號(hào)或者雙引號(hào)的字符串怎么辦,當(dāng)然可以使用反斜杠進(jìn)行轉(zhuǎn)義,但是如果內(nèi)容太多呢?
你總不可能對(duì)每一個(gè)這樣的特殊字符都人工進(jìn)行轉(zhuǎn)義,何況你通常處理的都是表單自動(dòng)提交的內(nèi)容。
所以,應(yīng)該使用mysql_real_escape_string函數(shù):
mysql_real_escape_string — 轉(zhuǎn)義 SQL 語(yǔ)句中使用的字符串中的特殊字符,并考慮到連接的當(dāng)前字符集。
但是注意:該函數(shù)并不轉(zhuǎn)義 % 和 _。另外,最好不要對(duì)整條sql語(yǔ)句使用該函數(shù),而是只轉(zhuǎn)義傳入sql語(yǔ)句的字符串參數(shù),否則會(huì)發(fā)生意想不到的結(jié)果。
腳本舉例:
<?php
$item = "Zak's and Derick's Laptop";
$escaped_item = mysql_real_escape_string($item);
printf ("Escaped string: %s\n", $escaped_item);
?>
所以,應(yīng)該使用mysql_real_escape_string函數(shù):
mysql_real_escape_string — 轉(zhuǎn)義 SQL 語(yǔ)句中使用的字符串中的特殊字符,并考慮到連接的當(dāng)前字符集。
但是注意:該函數(shù)并不轉(zhuǎn)義 % 和 _。另外,最好不要對(duì)整條sql語(yǔ)句使用該函數(shù),而是只轉(zhuǎn)義傳入sql語(yǔ)句的字符串參數(shù),否則會(huì)發(fā)生意想不到的結(jié)果。
腳本舉例:
復(fù)制代碼 代碼如下:
<?php
$item = "Zak's and Derick's Laptop";
$escaped_item = mysql_real_escape_string($item);
printf ("Escaped string: %s\n", $escaped_item);
?>
您可能感興趣的文章:
- cakephp打印sql語(yǔ)句的方法
- PHP+Mysql實(shí)現(xiàn)多關(guān)鍵字與多字段生成SQL語(yǔ)句的函數(shù)
- php+MySQL判斷update語(yǔ)句是否執(zhí)行成功的方法
- PHP mysqli 增強(qiáng) 批量執(zhí)行sql 語(yǔ)句的實(shí)現(xiàn)代碼
- PHP執(zhí)行批量mysql語(yǔ)句的解決方法
- PHP5 mysqli的prepare準(zhǔn)備語(yǔ)句使用說(shuō)明
- php與mysql建立連接并執(zhí)行SQL語(yǔ)句的代碼
- php下巧用select語(yǔ)句實(shí)現(xiàn)mysql分頁(yè)查詢
- PHP與SQL語(yǔ)句常用大全
相關(guān)文章
php獲取遠(yuǎn)程圖片的兩種 CURL方式和sockets方式獲取遠(yuǎn)程圖片
php獲取遠(yuǎn)程圖片的兩種:CURL方式和sockets方式獲取遠(yuǎn)程圖片,需要的朋友可以參考下。2011-11-11

