網頁提交字串:
當頁面中的表單提交字串時,首先把字串按照當前頁面的編碼,轉化成位元組串。然後再將每個位元組轉化成 "%xx" 的格式提交到 web 伺服器。比如,乙個編碼為 gb2312 的頁面,提交 "中" 這個字串時,提交給伺服器的內容為 "%d6%d0"。
在伺服器端,web 伺服器把收到的 "%d6%d0" 轉化成 [0xd6, 0xd0] 兩個位元組,然後再根據 gb2312 編碼規則得到 "中" 字。
在 tomcat 伺服器中,request.getparameter() 得到亂碼時,常常是因為前面提到的「誤解一」造成的。預設情況下,當提交 "%d6%d0" 給 tomcat 伺服器時,request.getparameter() 將返回 [0x00d6, 0x00d0] 兩個 unicode 字元,而不是返回乙個 "中" 字元。因此,我們需要使用 bytes = string.getbytes("iso-8859-1") 得到原始的位元組串,再用 string = new string(bytes, "gb2312") 重新得到正確的字串 "中
如有變更,下次進行補充。
form表單提交是否會進行url編碼到伺服器
網頁提交字串 當頁面中的表單提交字串時,首先把字串按照當前頁面的編碼,轉化成位元組串。然後再將每個位元組轉化成 xx 的格式提交到 web 伺服器。比如,乙個編碼為 gb2312 的頁面,提交 中 這個字串時,提交給伺服器的內容為 d6 d0 在伺服器端,web 伺服器把收到的 d6 d0 轉化成 ...
form表單提交
表單的enctype屬性 enctype 屬性規定在傳送到伺服器之前應該如何對表單資料進行編碼。value 值 描述在傳送前編碼所有字元 預設 multipart form data 不對字元編碼。在使用包含檔案上傳控制項的表單時,必須使用該值。text plain 空格轉換為 加號,但不對特殊字元...
form表單提交
1.當輸入使用者名稱和密碼為空的時候,需要判斷。這時候就用到了校驗使用者名稱和密碼,這個需要在jsp的前端頁面寫 有兩種方法,一種是用submit提交。一種是用button提交。方法一 在jsp的前端頁面的頭部插入乙個js方法 function checkuser if password else ...