아이고 좀 어려운문제입니다. 3시간째 씨름중...ㅡㅡ > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

아이고 좀 어려운문제입니다. 3시간째 씨름중...ㅡㅡ 정보

아이고 좀 어려운문제입니다. 3시간째 씨름중...ㅡㅡ

본문

유니코드변수값땜에 둑겟네요
 

A사이트는 unicode 문자셋으로 만들어진 사이트인데요

B사이트는 euc-kr문자셋으로 만들어졋고요
 
 
A사이트에서 get 방식이나  POST 방식으로  B 사이트로 변수값을 넘기는데
 
B사이트에서
$username=iconv("UNICODE","EUC-KR",$username);
 

이런식으로 변환해서

$username을 찍어보면 한자로 깨져나오네요
 
원래 한글정자로 이름이 나와야 하는데요

어떻게 해야 하나요
받는  B 사이트의 페이지를 유니코드 속성의 페이지로 만들면 안깨지고 제대로 값이 나와요
그렇다고 B사이트 모든 파일을 유니코드 방식으로 바꿀순 없는 노릇이고...
 
 
아시는 분 도와주세요 
 

댓글 전체

A사이트에 문서 아래와같이 하시고
$username = base64_encode(iconv("UTF-8","EUC-KR",$username));

B사이트에는
<?  echo base64_decode($username); ?>

해보세요
UTF-8 페이지 -> EUC-KR 페이지로 GET방식으로 변수 넘기니 잘나옵니다.
왜그런지는 몰라요 ㅡ0ㅡ;
ASP군요 ;;
asp는 아는바가 없어서;;;
asp에서는 base64 인코딩/디코딩 하려면 별도의 라이브러리가 있어야 한다네요
http://taeyo.net/threadboard/list.asp?table=Board_Asp 에서 base64로 검색해보세요

아니면 A사이트에서 B사이트로 변수 넘길때 UTF-8로 파일 하나 만들어서 변수 전달한다음
$username = base64_encode(iconv("UTF-8","EUC-KR",$username));
해주고 원하는 파일로 다시 변수값을 넘겨줘 보세요
뭔말인지 몰라도 차분히 해보시기 바랍니다.
utf8 이라고 적는것과 utf-8로 적는것이 다른것으로 알고 있습니다.
euc-kr 도 그랬던가.. 하여간.. 이게 php의 버전에 따라서인지.
iconv 버전인지.. 하여간.. 이상하게 있다는 기억이 남아 있군요.. 몇가지 형태를 쫙.. 만드셔서

테스트 해보시고 난 다음에 팁란에 적어주세요 ^^;;

예전에 고생을 해서 풀긴 풀었는데.. 하여간.. 고생을 좀 하실겁니다.
php에 관한쪽으로 살펴보시기 바랍니다.
음 같이 해결해 볼려고 쪽지 보내드렸는데....
나가셨네요ㅠㅠ?

A사이트 unucode 로 만들어진 페이지에서
http://82da.com/Ybbs/sample/test.php

요리로

$a 라는 변수로 한글 스트링 포스트 로 넘겨봐 주시고요

그페이지에서 어떻게 보이는지 알려주시면 좋겠습니다
저도 비슷한 문제로 머리아픈적이 있었습니다.
UTF-8 에서 EUC-KR 로 인자 전달이 제대로 안되는 경우였는데요(서신평 실명인증)
해결은 봤습니다만... 혹시라도 a 사이트 혹은 b 사이트가 웹호스팅을 사용하시나요?
아니면 자체서버를 사용하시나요?
자체 서버를 사용하시는 경우
b사이트에서 a사이트의 인자를 받아오는 부분을
계정 또는 디렉토리를 하나 더 만드신뒤에..
네임서버 설정에 가상도메인을 하나 추가합니다.
 (물론 name서버 설정에서 도메인이 하나인경우 가상도메인 (http://xxx.aaa.bbb  xxx부분이 가상도메인을 사용하시기바랍니다)

apache 설정 (httpd.conf) 에서 virtualhost 를 하나 새로 만드신 디렉토리 혹은 계정을 도메인 포워딩
하신다음 php_value 를 해당 가상호스트에 추가 합니다.

ex)

<VirtualHost 000.000.000.000>
      php_value default_charset EUC-KR
      ServerName euckr.aaa.ccc
      DocumentRoot /home/euckr/public_html/
</VirtualHost>
-------------------------------------------
설정이 끝나셨으면 새로 만드신 디렉토리 혹은 계정에 convert 전용 페이지를 만듭니다.
해당 페이지 내에선 mb_convert_encoding($str, 'utf-8', 'euc-kr') 과 mb_convert_encoding($str, 'euc-kr', 'utf-8')
상호 변환을 할 수 있습니다.
이런식으로 해결을 보았습니다.
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT