그누보드를 UTF-8 로 변환해서 설치했습니다. 정보
그누보드를 UTF-8 로 변환해서 설치했습니다.본문
안녕하세요.
MYSQL,PHP,APACHE다시 다 깔아가면서 설치하고, 그누보드도 원본소스 받아서
UTF-8로 컨버팅하고 CONFIG.PHP파일에 있는 캐릭티셋도 UTF-8로 변경하고
설치까지 다 마쳤습니다 .지금 PHPMYADMIN에서도 잘 나오고요.
근데.... 역시나 문제가 발생했습니다...
/skin/member/basic/register_form.skin.php 파일을 보면 469라인에
win_open(g4_path+"/"+g4_bbs+"/member_nick_check.php?mb_nick="+document.fregisterform.mb_nick.value, "hiddenframe");
부분이 있습니다. 별명을 확인하는 부분인데요.
여기서 url에 파라미터값으로 mb_nick 값을 보내면 member_nick_check.php 파일에서
$mb_nick을 했을때 한글은 깨져서 '불고구미'하면 '불고구뵿' 같은 식으로 나옵니다.
영문으로는 이상이 없고요.
아무리 찾아봐도, java에서 url에 파라미터 값으로 날려서 php에서 받을때 저같이 UTF-8로
해놓으면 어떻게 해야 정상적으로 나오는지 모르겠습니다.
혹시 자바관련해서 소스 전부다 수정해야 되나요? 끄흐... 깔끔하게 필요한 부분 정리해서
UTF-8버전 올려놓을려고 했는데... 쩝... 막혀버리네요..
도움이 필요합니다~ 지원이 필요합니다~ 도와주시면 후사라도?? -_-;
힌트라도 주시면 감사하겠습니다~
그럼 오늘도 즐거운 하루 되세요.
MYSQL,PHP,APACHE다시 다 깔아가면서 설치하고, 그누보드도 원본소스 받아서
UTF-8로 컨버팅하고 CONFIG.PHP파일에 있는 캐릭티셋도 UTF-8로 변경하고
설치까지 다 마쳤습니다 .지금 PHPMYADMIN에서도 잘 나오고요.
근데.... 역시나 문제가 발생했습니다...
/skin/member/basic/register_form.skin.php 파일을 보면 469라인에
win_open(g4_path+"/"+g4_bbs+"/member_nick_check.php?mb_nick="+document.fregisterform.mb_nick.value, "hiddenframe");
부분이 있습니다. 별명을 확인하는 부분인데요.
여기서 url에 파라미터값으로 mb_nick 값을 보내면 member_nick_check.php 파일에서
$mb_nick을 했을때 한글은 깨져서 '불고구미'하면 '불고구뵿' 같은 식으로 나옵니다.
영문으로는 이상이 없고요.
아무리 찾아봐도, java에서 url에 파라미터 값으로 날려서 php에서 받을때 저같이 UTF-8로
해놓으면 어떻게 해야 정상적으로 나오는지 모르겠습니다.
혹시 자바관련해서 소스 전부다 수정해야 되나요? 끄흐... 깔끔하게 필요한 부분 정리해서
UTF-8버전 올려놓을려고 했는데... 쩝... 막혀버리네요..
도움이 필요합니다~ 지원이 필요합니다~ 도와주시면 후사라도?? -_-;
힌트라도 주시면 감사하겠습니다~
그럼 오늘도 즐거운 하루 되세요.
댓글 전체
자.스와 php 간에 변수 전달시 한글깨짐 현상을 해결하는 방법은 원본 코드로는 불가능 합니다.
아래중에 선택해서 적용하십시오.
1. 먼저 닉네임 필드값을 별도 폼을 하나 만들어서 포스트로 넘기는 방법이 있구요.
이 경우 포스트로 넘길때도 히든프레임으로 현재 그누보드이 id/mb_nick 등을 체크하는 형식을 유지할 수 있습니다.
2. 위 스크립트로 이용해서 mb_nick 값을 넘길때 base64_encode 로 넘겨주고 받는 페이지에서 base64_decode 로 풀어주십시오.
(스크립트를 이용해서 넘긴 값중에 한글인 경우는 php 에서 받을때 base64_encode 가 아닌 다른 함수는 모든 한글값이 깨집니다.(예:urlencode/rawurlencode 등))
예)
win_open(g4_path+"/"+g4_bbs+"/member_nick_check.php?mb_nick=<?=base64_encode("+document.fregisterform.mb_nick.value+")?>", "hiddenframe");
위 문법이 맞나 모르겠네요...
잠이 와서..ㅡㅡ;
해보고 안되면 다시 글 올려주시거나 1번의 방법으로 하십시오.
아래중에 선택해서 적용하십시오.
1. 먼저 닉네임 필드값을 별도 폼을 하나 만들어서 포스트로 넘기는 방법이 있구요.
이 경우 포스트로 넘길때도 히든프레임으로 현재 그누보드이 id/mb_nick 등을 체크하는 형식을 유지할 수 있습니다.
2. 위 스크립트로 이용해서 mb_nick 값을 넘길때 base64_encode 로 넘겨주고 받는 페이지에서 base64_decode 로 풀어주십시오.
(스크립트를 이용해서 넘긴 값중에 한글인 경우는 php 에서 받을때 base64_encode 가 아닌 다른 함수는 모든 한글값이 깨집니다.(예:urlencode/rawurlencode 등))
예)
win_open(g4_path+"/"+g4_bbs+"/member_nick_check.php?mb_nick=<?=base64_encode("+document.fregisterform.mb_nick.value+")?>", "hiddenframe");
위 문법이 맞나 모르겠네요...
잠이 와서..ㅡㅡ;
해보고 안되면 다시 글 올려주시거나 1번의 방법으로 하십시오.
안녕하세요. 2번 방법으로 해볼려고 하는데요. 저 코드가 java script 코드고, 안에다 php코드를 넣는건데요.
php는 서버에서 돌아가고 java는 클라이언트에서 돌아가니까 실제적으로 되는건 아직 아무값도 없는걸
서버에서 php로 base64엔코드하고, 클라이언트 측에서는 그걸 가지고 값을 보내게 되는거 같은데요??
그러니까 클라이언트에서 무슨 값을 넣더라도, php로 base64 encode하는데는 적용이 안되는거 같습니다.
그렇다면 자바에서 엔코드 해주고 php에서 자바엔코드 한걸 받아야 하는데... 어떻게 해야할런지요??
졸린데 답변 주셔서 정말 감사합니다.. ^^;
다시한번 알려주시면 감사하겠습니다..
php는 서버에서 돌아가고 java는 클라이언트에서 돌아가니까 실제적으로 되는건 아직 아무값도 없는걸
서버에서 php로 base64엔코드하고, 클라이언트 측에서는 그걸 가지고 값을 보내게 되는거 같은데요??
그러니까 클라이언트에서 무슨 값을 넣더라도, php로 base64 encode하는데는 적용이 안되는거 같습니다.
그렇다면 자바에서 엔코드 해주고 php에서 자바엔코드 한걸 받아야 하는데... 어떻게 해야할런지요??
졸린데 답변 주셔서 정말 감사합니다.. ^^;
다시한번 알려주시면 감사하겠습니다..