註冊中的亂碼問題解決方案

2022-05-07 08:48:12 字數 509 閱讀 6013

註冊普遍有兩種提交方式,get和post。

post提交中的亂碼問題:

在後台設定request.setcharacterencoding("utf-8");

get提交中的亂碼問題:

在後台設定

給每個需要設定編碼的字段進行編碼。

假如該字段為username,則

username = new string(username.getbytes("iso8859-1"),"utf-8");

原理:前台傳遞的引數是utf-8編碼的,而伺服器解碼時用的iso8859-1,所以必然導致亂碼。想正確解碼的話就「逆行」,用iso8859-1編碼,再用utf-8解碼即可。這樣也可以解決post提交的亂碼問題。

注:這種解碼方式非常原始,而且這個需要給每乙個引數設定編碼,比較麻煩。因此大多都用post提交,安全又方便,僅有少數引數需要傳遞時才使用get提交。

殺手鐗:直接在伺服器的server.xml中設定解碼格式為utf-8也可以,這樣就不用在後台**中設編碼啦!

Ajax post亂碼問題解決方案

今天測試乙個ajax元件的時候遇到亂碼問題,在網上找了很多解決方案都未能解決,原因可能我出現亂碼的問題不在傳輸過程,而且是在頁面上就已經出現亂碼了,現象很奇怪,我直接把引數賦值為中文後alert,發現是亂碼,所以不管我怎麼設定和在後台解碼都依然是亂碼。後來找到原因,共分兩點 第一 我的meta標籤設...

python Django 亂碼問題解決方案

亂碼問題 1,插入資料庫亂碼,檔案前加入 import sys reload sys sys.setdefaultencoding utf8 同時保證資料庫介面是utf8的 mysql alter database databasename default character set utf8 co...

中文亂碼問題解決方案

1.接收中文引數亂碼 a.以get方式提交引數亂碼,在server.xml檔案中catelina標籤中新增乙個屬性uriencoding utf 8 b.以post方式提交引數亂碼,在接收引數之前設定request物件的編碼方式 request.setcharacterencoding utf 8 ...