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=유시형';
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']));
$pass = $_POST['password'];
$name = iconv('UTF-8','EUC-KR',urldecode($_POST['name']));
자바스크립트에서 함수를 적용한 역순으로 decoding을 먼저 해주고
문자셋을 euc-kr로 변경해주면 된다.
물론,
서버셋팅이 UTF-8로 되어 있다면 위처럼 귀찮은 짓은 하지 않아도 된다.
역시 대세는 UTF-8이다....
'Programing > HTML/JavaScript/CSS' 카테고리의 다른 글
자동으로 Sorting 이 되는 SELECTBOX에 항목추가하기 (0) | 2006.11.08 |
---|---|
레이어의 높이 고정시키기 - overflow (0) | 2006.10.19 |
이벤트 추가 - addEventListener/attachEvent (2) | 2006.10.09 |
window.navigator (0) | 2006.07.03 |
DIV의 height (0) | 2006.05.11 |