日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql数据库函数转义函数_MySql数据库-查询、插入数据时转义函数的使用

發布時間:2025/3/15 数据库 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql数据库函数转义函数_MySql数据库-查询、插入数据时转义函数的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近在看一部php的基礎視頻教程,在做案例的時,當通過用戶名查詢用戶信息的時候,先使用了轉義函數對客戶提交的內容進行過濾之后再交給sql語句進行后續的操作。雖然能看到轉義函數本身的作用,但是仍然有一些疑惑。

疑惑一:當轉義數據后,數據中會增加一些反斜杠,為了能查找出對應的數據,那么原來存在數據庫中的數據是不是也已經被保存成含有反斜杠的了?

疑惑二:轉義數據后再向數據庫中插入數據,保存在數據庫中的數據是否會含有過濾后的反斜杠?

帶著這些疑問對用戶提交的表單進行測試。

echo get_magic_quotes_gpc();  //?獲取當前 magic_quotes_gpc的配置選項設置,如果開啟了就會返回1,否則返回0

$title = $_POST[‘title‘];

$sql = insert into news(`title`) values(‘". $title ."‘);

如果不適用mysql_real_escape_string()轉義函數,當接收的數據中包含單引號時就會引起sql錯誤。

$title = mysql_real_escape_string($_POST[‘title‘]);

轉義過后再進行插入數據就不會出現上面的問題,而且插入到數據庫中的數據和輸入時的一樣,不會帶有轉義時增加的反斜杠。

當查詢數據時,也是按照輸入時的內容與數據庫進行比較,也能查詢出相應的結果。

由此推論,mysql_real_escape_string()轉義函數只在sql語句執行的過程中起到保護作用,并不會對結果產生影響。

將過濾函數貼出來。

1 function check_input($value)2 {3 //去除斜杠

4 if (get_magic_quotes_gpc())5 {6 $value = stripslashes($value);7 }8 //如果不是數字則加引號

9 if (!is_numeric($value))10 {11 $value = mysql_real_escape_string($value);12 }13 return $value;14 }

以上是自己的理解,與大家分享,如果有誤還請大家批評指正。

原文:http://www.cnblogs.com/iverson-3/p/6920438.html

總結

以上是生活随笔為你收集整理的mysql数据库函数转义函数_MySql数据库-查询、插入数据时转义函数的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。