우선 javascript alert(); 에서 한글 출력이 깨지는 거는,
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />
요런 식으로 추가해줘서 해결.
하지만 모든 스크립트에 다 써줘야해서 근본적인 해결방법은 아닌것 같다.
두번째로 파일 다운로드 페이지에서 한글 파일명이 깨지는 현상.
IE6와 FF, 크롬 3개에서 테스트를 해보고 있는데,
1) UTF-8 한글 파일명을 DB에서 그대로 가져와 header로 출력하면, IE에서는
"CA01AE71" 이런 형식으로 깨져서 나오고, FF에선 잘 나온다.
2) 해더 출력 할때 urlencode()를 써서 변환해보니
IE에서는 잘 나오지만, FF에서는 인코딩 된 문자 그대로 출력이 되며 깨진다.
3) iconv를 써서 UTF-8을 EUCKR이나 CP949로 변환하고 해더로 출력하니
IE와 FF, 크롬 모두 잘 출력이 된다. 하지만 좀 더 테스트를 해봐야 되겠다.
무엇보다 UTF-8 관련해서 이런 문제가 나올때마다 이런 저런 방법을 찾아 해결은
하고 있지만 근본적으로 왜 이런일들이 일어나는지 알려고 하지 않으면 매번
똑같은 식이 될 것 같아 더 공부가 필요하다.