
存儲mysql數據存在特殊字符時處理_轉義存儲數據時特殊符號
的處理
function url_ba64_encode($str){
//將這個?法處理后的數據可以存儲,不會有特殊符號
if($str=="")
return "";
$code=ba64_encode($str);//$code='dHQ=';
$code=str_replace('+',"!",$code);//把所?"+"替換成"!"
$code=str_replace('/',",",$code);//把所?"/"替換成"*"
$code=str_replace('=',"",$code);//把所?"="刪除掉
return $code;//$code='dHQ!'
}
function url_ba64_decode($code){
//將這個?法處理后的數據可以顯?,不會有難識別的內容
if($code=="")
return "";
$code=str_replace("!",'+',$code);//把所?"+"替換成"!"
$code=str_replace(",",'/',$code);//把所?"/"替換成"*"
$str=ba64_decode($code); return $str;
}
>
php向mysql數據庫插?數據進?轉義包括兩??的操作,第???需要在添加數據時通過數據轉義將數據寫?庫中,第???在將數據顯
?在頁?時需要再次將數據恢復為原始狀態,即反轉義。?、數據轉義
mysql_escape_string($content)
?、反轉義stripslashes($content)
以上兩?代碼即可實現php向mysql數據庫插?數據轉義操作。get_magic_quotes_gpc()在PHP中get_magic_quotes_gpc()函數是內置
的函數,這個函數的作?就是得到設置中magic_quotes_gpc選項的值。那么就先說?下magic_quotes_gpc選項:如果
magic_quotes_gpc=On,PHP解析器就會?動為post、get、cookie過來的數據增加轉義字符“”,以確保這些數據不會引起程序,特
別是數據庫語句因為特殊字符引起的污染?出現致命的錯誤。在magic_quotes_gpc=On的情況下,如果輸?的數據有單引號(’)、雙引號
(”)、反斜線()與 NUL(NULL 字符)等字符都會被加上反斜線。這些轉義是必須的,如果這個選項為off,那么我們就必須調?addslashes
這個函數來為字符串增加轉義。正 是因為這個選項必須為On,但是?讓?戶進?配置的?盾,在PHP6中刪除了這個選項,?切的編程都
需要在 magic_quotes_gpc=Off下進?了。在這樣的環境下如果不對?戶的數據進?轉義,后果不僅僅是程序錯誤?已了。同樣的會引起
數據庫被注? ***的危險。所以從現在開始?家都不要再依賴這個設置為On了,以免有?天你的服務器需要更新到PHP6?導致你的程序不
能正常?作。當magic_quotes_gpc=On的時候,函數get_magic_quotes_gpc()就會返回1當magic_quotes_gpc=Off的時候,函數
get_magic_quotes_gpc()就會返回0因此可以看出這個get_magic_quotes_gpc()函數的作?就是得到環境變量magic_quotes_gpc的
值。既然在PHP6中刪除了magic_quotes_gpc這個選項,那么在PHP6中這個函數我想也已經不復存在了。addslashes()addslashes()
函數在指定的預定義字符前添加反斜杠。這些預定義字符是:* 單引號 (')* 雙引號 (")* 反斜杠 ()* NULL語法
addslashes(string)StripSlashes()去掉反斜線字符。語法: string stripslashes(string str);返回值: 字符串函數種類: 資料處理本函數可
去掉字符串中的反斜線字符。若是連續?個反斜線,則去掉?個,留下?個。若只有?個反斜線,就直接去掉。如果不知道有沒有設置可以
這樣做:

本文發布于:2023-05-24 11:27:03,感謝您對本站的認可!
本文鏈接:http://m.newhan.cn/zhishi/a/1684898824177208.html
版權聲明:本站內容均來自互聯網,僅供演示用,請勿用于商業和其他非法用途。如果侵犯了您的權益請與我們聯系,我們將在24小時內刪除。
本文word下載地址:存儲mysql數據存在特殊字符時處理_轉義存儲數據時特殊符號的處理.doc
本文 PDF 下載地址:存儲mysql數據存在特殊字符時處理_轉義存儲數據時特殊符號的處理.pdf
| 留言與評論(共有 0 條評論) |