jQuery Ajax 한글 깨짐 해결 방법
페이지 정보
작성자 서방님 댓글 0건 조회 206회 작성일 13-04-12 10:42본문
Ajax란 비동기 호출을 의미합니다. 즉, 페이지의 리로드 없이 처리할 수 있는 방법이죠 ^^
다만, 한글을 전송하게 되었을 때 인코딩이 되지 않아 깨져 보입니다.
(ㅁㅁ 식으로 보이게 됩니다.)
다행히도 해결 방법은 간단합니다 ^^
Ajax로 전송하려는 값에 encodeURIComponent() 로 감아줍니다.
ex) var 전송하려는 값 = encodeURIComponent($("#아이디").val());
그후 전송된 값을 받는 PHP 에서
header("Content-Type: text/plain");
header("Content-Type: text/html; charset=euc-kr");
헤더를 입력하고
다시 euc-kr 로 인코딩하기 하기 위해 아래와 같이 입력하시면 됩니다.
ex) 전송받을 값 = iconv("UTF-8", "CP949", rawurldecode($_POST[전송한 값]));
하지만! 한글은 해결되지만 링크를 입력했을 때 문자가 잘리는 문제가 있습니다.
(ex) http://www.winyple.com/search.php?no=0&type=subject&search=%B9%D9%B6%F7%B1%E2%BE%EF 로 입력시
http://www.winyple.com/search.php?no=0&type=subject&search= 로 보이는 경우)
그러한 문제를 해결하기 위해서는
var "전송하려는 값"에 escape() 로 감싸주면 해결됩니다.
댓글목록
등록된 댓글이 없습니다.