導航:首頁 > 編程語言 > php過濾get參數

php過濾get參數

發布時間:2022-08-17 18:51:32

php 如果不對 POST 或者 GET 請求做過濾處理就會被注入嗎

是的,如果不做過濾肯定很容易就被注入的

Ⅱ 請問PHP怎麼過濾GET或者POST的參數防止js注入,或者一些html注入請請提供代碼參考謝謝!

string mysql_real_escape_string ( string unescaped_string [, resource link_identifier])

本函數將 unescaped_string 中的特殊字元轉義,並計及連接的當前字元集,因此可以安全用於 mysql_query()。
注: mysql_real_escape_string() 並不轉義 % 和 _。
例子 1. mysql_real_escape_string() 例子
<?php
$item = "Zak's and Derick's Laptop";
$escaped_item = mysql_real_escape_string($item);
printf ("Escaped string: %s\n", $escaped_item);
?>
以上例子將產生如下輸出:
Escaped string: Zak\'s and Derick\'s Laptop

Ⅲ PHP $_GET方法傳過來參數過濾問題求高手指導一二!!

php有個防止sql注入的函數addslashes(),這樣就會把你搜索框里傳過來的單引號雙引號轉義掉,還有要防止跨站腳本攻擊xxs,用函數htmlspecialchars (),詳細可看php手冊

Ⅳ 跪求PHP的__get方法的參數

__get的作用更多的會出現在比較抽象的需求中:當對象屬性不存在時,以屬性名為參數調用__get。
舉例來說:
<?
class a{

function __get($name){
if($name == 'db') {
$this->db = mysql_connect('localhost', 'root', 'root');
mysql_select_db('test');
} else if($name == 'other1') {
// do something
} else if($name == 'other2') {
// do something
}
return $this->$name;
}

function get_data() {
// $this->db 這一句相當於調用$this->__get('db')
$query = mysql_query("select * from a", $this->db);
while($row = mysql_fetch_assoc($query)) {
print_r($row);
}
}

}

$b = new a();
$b->get_data();

?>
--------------------------
返回的值就相當於是調用$this->__get('db'); 的返回值,在上面的例子裡面就是一個mysql連接句柄。
--------------------------
上面的例子的作用:
僅當需要連接mysql的時候才會產生連接,如果僅僅是靜態頁面,就不需要建立連接來浪費寶貴的mysql連接數。類似的,在傳統面向過程的結構里,「必須」初始化的東西,都可以放在__get裡面去「按需初始化」。比如smarty類,分頁類 等等等等。

在MVC架構裡面也經常會用到類似於:
// 調用$this->__get('somemodel')
$this->somemodel->dosomething1();
//因為在__get裡面已經給'somemodel'賦值,所以此處不重復調用__get
$this->somemodel->dosomething2();

Ⅳ PHP如何過濾POST、GET、COOKIE

首先命葯明白POST,GRT,COOKIE,其實它是一個數組。
你可以print_r($_POST)就明白了
所以你一可以寫一個方法,
public function a ($_POST){
foreach($_POST as $val) {
/將所有的值過濾掉後賦予一個新的數組

}
return $arr;

}

Ⅵ php中,通過$_GET 和 $_POST 取得的數據 安不安全 需要什麼過濾函數處理嗎

引號過濾有magic_quotes_gpc(伺服器配置)

函數addslashes() htmlspecialchars(,ENT_QUOTE);

注意伺服器上是否已經開啟magic_quotes_gpc
(php>=5.3 已經廢棄了它) 如果已經開啟,再進行轉義會導致雙層轉義。 另外addslashes() addcslashes() 都不能對數組進行處理,需要寫一個遞歸實現。
你可以使用函數get_magic_quotes_gpc()來檢測它是否已經開啟

不建議使用addslashes使用addslashes可能會因為資料庫編碼的問題使得單引號未被轉義了解詳情可訪問: http://shiflett.org/blog/2006/jan/addslashes-versus-mysql-real-escape-string

Ⅶ 關於php如何傳遞數據

看了你的問題,我有點暈,本來是很困的,現在更困了。

我覺得,你這不就是一個正常的網站嗎?也沒什麼值需要傳吶?

你的登錄頁面向admin.php傳值這個簡單,直接用form表單就可以搞定了;

驗證的頁面完全可以和dir.php合並嘛,登錄的話都是用session或cookie完成的,反正你的每個頁面都必須要做這一步,直接合並就OK

另外你的dir.php就是一個正常了網頁了,也就是用戶需要瀏覽的頁面對吧?那你點了對應的鏈接就鏈接不同的頁面,這個不是太簡單了嗎?不同的頁面去取不同的數據表,神馬大型的網站都是這么乾的呀!

另外,要和你說的是,安全不安全不是列出了什麼,重要的是你列出來的東西不要包含你的欄位名,這才是影響安全的重要因素,你可以通過PHP把它轉換吶,PHP不就是做這個轉換的嗎?PHP的功能是神馬?就是做這個的呀。

另外,如果你是動態頁面,使用鏈接跳轉頁面,就必須用?+信息的方式,當然,我說的是初學,如果你學得深入了,可以用偽靜態,更可以用純靜態,這個先不說,先把頁面間通過get傳值弄通,你就學會PHP了,也就是說,你正式進入了PHP的大門。

不行了,熬不住了,睡覺去了.............

Ⅷ php 如何隱藏GET的傳送值

post傳值。或者get加密,自己解密。可網路搜下 discuz的加密解密程序

Ⅸ PHP怎麼過濾GET或者POST的參數怎麼樣才能保證代碼不被注入

if (!get_magic_quotes_gpc())//如不美觀沒有開啟的話{ /****需要對這幾個數組,遍歷,注重數組多維的情形,addslashes($str)就可以 $_GET $_POST $_COOKIE $_REQUEST ****/}

Ⅹ PHP判斷是否有Get參數的方法

可採用如下方式判斷
.代碼如下:

if(is_array($_GET)&&count($_GET)>0)//判斷是否有Get參數
{
if(isset($_GET["para"]))//判斷所需要的參數是否存在,isset用來檢測變數是否設置,返回trueorfalse
{
$para=$_GET["para"];//存在
}
}

閱讀全文

與php過濾get參數相關的資料

熱點內容
雲點播電影網php源碼 瀏覽:93
pythonclass使用方法 瀏覽:222
移動加密軟體去哪下載 瀏覽:281
php彈出alert 瀏覽:207
吉林文檔課件加密費用 瀏覽:131
感測器pdf下載 瀏覽:284
隨車拍app綁定什麼設備 瀏覽:898
方維團購系統源碼 瀏覽:991
linux反彈shell 瀏覽:159
列印機介面加密狗還能用嗎 瀏覽:301
二板股票源碼 瀏覽:448
度人經pdf 瀏覽:902
怎麼配置android遠程伺服器地址 瀏覽:960
java程序員看哪些書 瀏覽:943
什麼app可以免費和外國人聊天 瀏覽:797
pdf手寫筆 瀏覽:182
別永遠傷在童年pdf 瀏覽:990
愛上北斗星男友在哪個app上看 瀏覽:421
主力散戶派發源碼 瀏覽:671
linux如何修復伺服器時間 瀏覽:61