『壹』 php 中的 GET 與 POST 有什麼區別
1. get是從伺服器上獲取數據,post是向伺服器傳送數據。
2. get是把參數數據隊列加到提交表單的ACTION屬性所指的URL中,值和表單內各個欄位一一對應,在URL中可以看到。post是通過HTTP post機制,將表單內各個欄位與其內容放置在HTML HEADER內一起傳送到ACTION屬性所指的URL地址。用戶看不到這個過程。
3. 對於get方式,伺服器端用Request.QueryString獲取變數的值,對於post方式,伺服器端用Request.Form獲取提交的數據。
4. get傳送的數據量較小,不能大於2KB。post傳送的數據量較大,一般被默認為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為100KB。
5. get安全性非常低,post安全性較高。但是執行效率卻比Post方法好。
建議:
1、get方式的安全性較Post方式要差些,包含機密信息的話,建議用Post數據提交方式;
2、在做數據查詢時,建議用Get方式;而在做數據添加、修改或刪除時,建議用Post方式;
『貳』 php面試題get和post的區別
網頁表單當中的get方式和post方式的區別
1、get方式可傳遞的數據量有限,大約是2K左右,而post在iis5當中則達到100k,一般人們可以默認post是無限制的;
2、get方式在提交帳號密碼等表單時不如post方式安全。在get提交表單以後瀏覽器的url會將你提交的表單參數全部顯示在地址欄當中,而且可以通過機器的緩存來直接查看到各項參數;而post方式則不會;
3、get方式在後台處理頁面用Request.QueryString接收各個參數;而post則用Request.Form獲取;
4、get方式會忽略<form action="a.asp?a=a"里邊的"a=a"這個參數;而post方式則不會
『叄』 請問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和post有什麼區別
1 get明文傳輸,信息附加在url上面,get明文傳輸,post更加安全
2 get傳輸有大小限制,應該是3k,post需要制定傳輸類型
3 get多用於獲取數據,根據get變數的不同調用不同的數據,post多用於提交數據,提交用戶輸入的數據
『伍』 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發送get,post請求的幾種方法
POST方法比較適合用於發送一個保密的(比如信用卡號)或者比較大量的數據到伺服器,但速度慢。而Get方法會將所要傳輸的數據附在網址後面,然後一起送達伺服器,因此傳送的數據量就會受到限制且不安全,但是執行效率卻比 Post方法好。具體來說如下:
1、Get將表單中數據的按照variable=value的形式,添加到action所指向的URL後面,並且兩者使用「?」連接,而各個變數之間使用「&」連接;Post是將表單中的數據放在form的數據體中,按照變數和值相對應的方式,傳遞到action所指向URL。
2、Get是不安全的,因為在傳輸過程,數據被放在請求的URL中,而如今現有的很多伺服器、代理伺服器或者用戶代理都會將請求URL記錄到日誌文件中,然後放在某個地方,這樣就可能會有一些隱私的信息被第三方看到。另外,用戶也可以在瀏覽器上直接看到提交的數據,一些系統內部消息將會一同顯示在用戶面前。Post的所有操作對用戶來說都是不可見的。
3、Get傳輸的數據量小,這主要是因為受URL長度限制;而Post可以傳輸大量的數據,所以在上傳文件只能使用Post(當然還有一個原因,將在後面的提到)。
4、Get限制Form表單的數據集的值必須為ASCII字元;而Post支持整個ISO10646字元集。
5、Get是Form的默認方法。