블로그 이미지
초딩입맛제주아재
하고 싶은 것만 하며 살고 싶다

calendar

1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
2006. 7. 18. 14:08 Programing/HTML/JavaScript/CSS

xmlhttprequest 객체를 사용하면 참 편리하다.
이른바 AJAX의 핵심이 바로 이 객체가 아닌가 한다.

xmlhttprequest 객체를 사용하여 데이터를 PHP파일로 송신하면
데이터는 utf-8로 인코딩되어 전송된다.

var url = some url;
var param = 'id=myid&password=mypass&name=유시형';


xmlHttpPost(url,param,result function);

위 처럼 인자값에 한글이 들어갈 경우에는
제대로 전송이 되지 않는다.

var param = 'id=myid&password=mypass&name=' + escape(encodeURIComponent('이름'));

encodeURIComponent,escape 두 함수를 이용해서 가공을 한번 해줘야 제대로 전달이 된다.


다음으로 PHP에서 위 인자값을 받을때는

$id = $_POST['myid'];
$pass = $_POST['password'];
$name = iconv('UTF-8','EUC-KR',urldecode($_POST['name']));

자바스크립트에서 함수를 적용한 역순으로 decoding을 먼저 해주고
문자셋을 euc-kr로 변경해주면 된다.

물론,
서버셋팅이 UTF-8로 되어 있다면 위처럼 귀찮은 짓은 하지 않아도 된다.
역시 대세는 UTF-8이다....


posted by 초딩입맛제주아재