form表單的post,get提交方式分析以及產生的亂碼問題
Form提供了兩種資料傳輸的方式——get和post。雖然它們都是資料的提交方式,但是在實際傳輸時確有很大的不同,並且可能會對資料產生嚴重的影響。雖然為了方便的得到變數值,Web容器已經遮蔽了二者的一些差異,但是瞭解二者的差異在以後的程式設計也會很有幫助的。
Form中的get和post方法,在資料傳輸過程中分別對應了HTTP協議中的GET和POST方法。二者主要區別如下:
1、Get是用來從伺服器上獲得資料,而Post是用來向伺服器上傳遞資料。
2、Get將表單中資料的按照variable=value的形式,新增到action所指向的URL後面,並且兩者使用“?”連線,而各個變數之間使用“&”連線;Post是將表單中的資料放在form的資料體中,按照變數和值相對應的方式,傳遞到action所指向URL。
3、Get是不安全的,因為在傳輸過程,資料被放在請求的URL中,而如今現有的很多伺服器、代理伺服器或者使用者代理都會將請求URL記錄到日誌檔案中,然後放在某個地方,這樣就可能會有一些隱私的資訊被第三方看到。另外,使用者也可以在瀏覽器上直接看到提交的資料,一些系統內部訊息將會一同顯示在使用者面前。Post的所有操作對使用者來說都是不可見的。
4、Get傳輸的資料量小,這主要是因為受URL長度限制;而Post可以傳輸大量的資料,所以在上傳檔案只能使用Post(當然還有一個原因,將在後面的提到)。
5、Get限制Form表單的資料集的值必須為ASCII字元;而Post支援整個ISO10646字符集。
6、Get是Form的預設方法。
使用Post傳輸的資料,可以通過設定編碼的方式正確轉化中文;而Get傳輸的資料卻沒有變化。在以後的程式中,我們一定要注意這一點。
_________________________________________________________________________________________________
相關推薦
form表單的post,get提交方式分析以及產生的亂碼問題
Form提供了兩種資料傳輸的方式——get和post。雖然它們都是資料的提交方式,但是在實際傳輸時確有很大的不同,並且可能會對資料產生嚴重的影響。雖然為了方便的得到變數值,Web容器已經遮蔽了二者的一些差異,但是瞭解二者的差異在以後的程式設計也會很有幫助的。 Form中的g
【轉載】form表單的兩種提交方式,submit和button的用法
按鈕 type ssid login false tex .get ons 轉載 1.當輸入用戶名和密碼為空的時候,需要判斷。這時候就用到了校驗用戶名和密碼,這個需要在jsp的前端頁面寫;有兩種方法,一種是用submit提交。一種是用button提交。方法一:在jsp的前端
form表單的兩種提交方式,submit和button的用法
1.當輸入使用者名稱和密碼為空的時候,需要判斷。這時候就用到了校驗使用者名稱和密碼,這個需要在jsp的前端頁面寫;有兩種方法,一種是用submit提交。一種是用button提交。 方法一: 在jsp的前端頁面的頭部插入一個js方法: function checkUser(
Form表單的幾種提交方式
text ucc ram rip sub javascrip reg data 方式 <script type="text/javascript"> $(function() { //1、ajax提交 $("#ajaxBtn").click(function
javaweb中表單post和get提交方式出現亂碼原因
最近在學javaweb遇到了亂碼問題,一直不太明白其中的具體原因,看了這篇文章明白了不少。感覺很有用所以把它轉載過來,方便以後檢視。 一、問題: 編碼問題是JAVA初學者在web開發過程中經常會遇到問題,網上也有大量相關的文章介紹,但其中很
Form表單的6種提交方式
1.無重新整理頁面提交表單 表單可實現無重新整理頁面提交,無需頁面跳轉,如下,通過一個隱藏的iframe實現,form表單的target設定為iframe的name名稱,form提交目標位當前頁面if
js form表單傳送資料兩種方式(post get)區別
<!DOCTYPE HTML> <html> <head> <title>please enter your title</
純js實現,get請求轉form表單post請求
如果這個頁面叫param.html那麼你只需要請求 域名/param.html?requestUrl=請求域名&key=value........既可以把原本的 get請求轉換為表單post請求。 <html> <head> <meta
關於http get和form表單post提交資料大小限制
之前我去面試,面試的人問了我些問題,其中令我印象深刻的就是如題的兩個,回來後特意去查找了一下,關於http get提交資料上限,之前只知道資料上限差不多是幾kb大小,具體為什麼卻沒有了解 httpget是通過url來傳遞資料,url不存在上限的問題,http協
瀏覽器原生 form 表單POST 數據的兩種方式
mes 但是 lba lose -s ipa mvm 默認 字串 我們在提交表單的時候,form表單參數中會有一個enctype的參數。enctype指定了HTTP請求的Content-Type。 常用有兩種:application/x-www-form-urlencod
php後臺接收form表單post的資料,並存到資料庫
1.form表單demo:task.html <fieldset id="setFiled"> <legend>釋出任務</legend> <form
PHP form表單post提交 $_POST接收不到資料
新手,最近在學習PHP,WAMP環境下碰到了同樣的問題,裝完PhpStorm後寫了個表單頁面和一個後臺列印$_POST的測試程式,POST方法接收不到資料,GET和REQUEST可以,另外如果把專案直接放在Apache伺服器的工作目錄下,然後在位址列輸入localhost是可以正常執行的。前面有答主說到了埠
關於form表單中使用ajax提交表單,ajax無法success的問題
問題背景:我的畢業設計是重構自己以前寫過的一個小網站,之前寫的時候沒有用任何框架,前後臺互動資料靠el表示式、form表單。在完成畢業設計時使用SpringMVC+Spring+MyBatis+JQuery,統一使用ajax來互動資料。 問題再現: html關鍵程式碼<
form表單多選框提交數據 服務器只能接受到一個數據
表單提交 form 多選 提交過去後表單中name相同的值會被後一個覆蓋,而不會被單獨識別出來。在name名稱後面加上‘[]’即可;如 name=‘user[]‘ 註意下面兩個教程的區別,我很想知道w3c怎麽讀取到的。等待指教; http://www.w3school.com.cn/tags/at
ckeditor.js的使用/form表單序列化後提交
ckeditor.js的使用/form表單序列化後提交 <script src="../ckeditor/ckeditor.js"></script> <textarea cols="40" rows="5" id="editor" name="desc"
Servlet 獲取前端Form表單資料,並實現請求重定向、請求轉發
1.前端介面 編寫一個最簡單的登入介面: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title&g
django form表單驗證,使用Ajax提交併返回提示資訊(JSON傳遞資料)
直接上程式碼: HTML,由Form外掛自動生成input標籤 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Ajax提交
對form表單post的研究
========================get方式提交form 預設方式為get,表單元素必須要有name屬性,最後各個表單元素的值(如果是file型別,值為檔名)會拼接成get方式的URL(帶有querystring)。 如果action屬性的URL原來帶有querystring,
一個form表單中,上傳和接收多個相同的name欄位引數
一般我們在同一個表單中,都會提交不同的name欄位。可是,我遇到了提交相同欄位的情況,例子如下: <form action="test_receive.php" method="post"> <div> <
js-form表單資料轉為json提交
JSON.stringify($('#categoryForm').serializeObject() /** * 自動將form表單封裝成json物件 */ $.fn.serializeObject = function() {