jsp... 질문하나만 할께요.. 캐릭터셋이 utf-8 인 상태에서 get/post 방식으로 파라미터 넘길때..
빛나라
i.jsp 중 일부내용입니다..
%@ page contentType=text/html; charset=utf-8 %
.
.
a href=in.jsp?¶m=가나다라 Go main/a //1. get방식으로 파라미터를 넘깁니다.
form name=say method=post action=in.jsp // 2. post 방식으로 파라미터를 넘깁니다.
input type=text name=phone
input type=hidden name=phone1 value=가나다라
input type=submit value=ok
in.jsp 중 일부내용입니다..
%@ page contentType=text/html; charset=utf-8 %
.
.
.
%
String param = request.getParameter(param);
String phone = request.getParameter(phone);
String phone1 = request.getParameter(phone1);
String paramA = new String(param.getBytes(8859_1), utf-8);
String phoneA= new String(phone.getBytes(8859_1), utf-8);
String phone1A = new String(phone1.getBytes(8859_1), utf-8);
%
%=paramA%
%=phoneA%
%=phone1A%
라 했을때...
1번 방식으로 넘겨서 값을 찍으면 가?�다? .. 머 이렇게 깨져서 나오구요..
2번 방식으로 넘겨서 값을 찍으면 hidden 값은 가나다라 정확히나오구 input 값도 입력한값이 제대로 나오거든요...
물론 캐릭터셋을 euc-kr 로 하고 new String(param.getBytes(8859_1), euc-kr); 로 하면 한글 제대로 나옵니다.
근데 문제는 웹페이지가 중국어(간체)/ 영어 로되어있고파라미터로 중국어를넘겨야 하기때문에... utf-8 로 사용한건데요...
* 파라미터값을 가나다라 대신 중국어를 넣어도 post방식은 제대로 출력되고 get방식은 출력이 깨집니다... -_-..
어쨌든 왜get 방식으로 넘겼을때는 왜 깨져서 나오나요 .. 해결책은 있다면 가르쳐주시면 감사하겠습니다.. -_-...
-
루리
캬 감사합니다...전 위에방식으로 했을땐 하나도 안되다 이걸로 하니깐 되네요 ㅎ
-
내꺼
선 감사드립니다. 덧글 작성해야 가입인사도 가능해서..^^
-
각티슈
실제 edit에서 저장할때도 UTF-8 형식으로 저장해보고 해보세요.
그게 문제가 될수도 있으니까요. -
늘솜
String param = java.net.URLEncoder.encode(\가나다라\
-
하예
get 방식을 사용하실때는 영문자가 아닌이상은 전부 URLEncoding을 하게 되어있습니다.
URLEncoding / URLDecoding을 이용하셔서 한번 해보세요.
그리고 get방식은 255자 이상은 넘어가지 않기 때문에 권장하는 방식이 아님니다.