這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)php中g(shù)et_magic_quotes_gpc()函數(shù)如何使用,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:主機域名、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、寧遠網(wǎng)站維護、網(wǎng)站推廣。get_magic_quotes_gpc函數(shù)介紹
取得 PHP 環(huán)境變數(shù) magic_quotes_gpc 的值,屬于 PHP 系統(tǒng)功能。
語法: long get_magic_quotes_gpc(void);
返回值: 長整數(shù)
本函數(shù)取得 PHP 環(huán)境配置的變量 magic_quotes_gpc (GPC, Get/Post/Cookie) 值。返回 0 表示關(guān)閉本功能;返回 1 表示本功能打開。
當(dāng) magic_quotes_gpc 打開時,所有的 ‘ (單引號), ” (雙引號), (反斜線) and 空字符會自動轉(zhuǎn)為含有反斜線的溢出字符。
magic_quotes_gpc設(shè)置是否自動為GPC(get,post,cookie)傳來的數(shù)據(jù)中的'”加上反斜線??梢杂胓et_magic_quotes_gpc()檢測系統(tǒng)設(shè)置。
如果沒有打開這項設(shè)置,可以使用addslashes()函數(shù)添加,它的功能就是給數(shù)據(jù)庫查詢語句等的需要在某些字符前加上了反斜線。
這些字符是單引號(')、雙引號(”)、反斜線()與 NUL(NULL 字符)。
默認情況下,PHP 指令 magic_quotes_gpc 為 on,它主要是對所有的 GET、POST 和 COOKIE 數(shù)據(jù)自動運行 addslashes()。
不要對已經(jīng)被 magic_quotes_gpc 轉(zhuǎn)義過的字符串使用 addslashes(),因為這樣會導(dǎo)致雙層轉(zhuǎn)義。遇到這種情況時可以使用函數(shù) get_magic_quotes_gpc() 進行檢測。
例
利用 get_magic_quotes_gpc()預(yù)防數(shù)據(jù)庫攻擊的正確做法
代碼如下
<?php function check_input($value) { // 去除斜杠 if (get_magic_quotes_gpc()) { $value = stripslashes($value); } // 如果不是數(shù)字則加引號 if (!is_numeric($value)) { $value = “‘” . mysql_real_escape_string($value) . “‘”; } return $value; } $con = mysql_connect(“l(fā)ocalhost”, “hello”, “321″); if (!$con) { die(‘Could not connect: ‘ . mysql_error()); } // 進行安全的 SQL $user = check_input($_POST['user']); $pwd = check_input($_POST['pwd']); $sql = “SELECT * FROM users WHERE user=$user AND password=$pwd”; mysql_query($sql); mysql_close($con); ?>
總結(jié)如下:
1. 對于magic_quotes_gpc=on的情況,
我們可以不對輸入和輸出數(shù)據(jù)庫的字符串?dāng)?shù)據(jù)作
addslashes()和stripslashes()的操作,數(shù)據(jù)也會正常顯示。
如果此時你對輸入的數(shù)據(jù)作了addslashes()處理,
那么在輸出的時候就必須使用stripslashes()去掉多余的反斜杠。
2. 對于magic_quotes_gpc=off 的情況
必須使用addslashes()對輸入數(shù)據(jù)進行處理,但并不需要使用stripslashes()格式化輸出
因為addslashes()并未將反斜杠一起寫入數(shù)據(jù)庫,只是幫助mysql完成了sql語句的執(zhí)行
上述就是小編為大家分享的php中g(shù)et_magic_quotes_gpc()函數(shù)如何使用了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
分享題目:php中g(shù)et_magic_quotes_gpc()函數(shù)如何使用-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://www.rwnh.cn/article34/csegse.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、響應(yīng)式網(wǎng)站、網(wǎng)站排名、App設(shè)計、商城網(wǎng)站、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容