2009.11.13 10:20

euc-kr 과 ks_c_5601-1987 둘중 어느것을 사용해야 하나요?


안녕하세요

meta 태그에 네이버나 다음등에서는 euc-kr 을 사용하고 어떤사이트는 ks_c_5601-1987 를

사용하더라구요. 저희 사이트에서는 euc-kr을 사용했는데

그런데 euc-kr에서 아래와 같이  test.asp 페이지에서 "롷" 같은 이상한 문자를 전송하면
test2.asp 에서 문자의 길이도 8 이고 그것을 출력해보면 롷 와 같아집니다.
때문에 SQL 서버에 넣을때 컬럼길이를 넘어서 에러가 납니다.
ks_c_5601-1987 로 하면 롷이 정상적으로 길이도 1이되고 SQL 서버에 정상적으로 들어갑니다.

궁금한 것은 1) 왜 네이버등은 euc-kr을 사용하는 것입니까?
궁금한 것은 2) euc-kr에서 롷과 같은 문자가 정상적으로 들어가도록 하는 방법이 없나요?
궁금한 것은 3) euc-kr, ks_c_5601-1987 둘중 어느것을 사용해야 하나요? 장단점은요.

예제)
===== test.asp =====
<html>
<head>
 <meta http-equiv="content-type" content="text/html; charset=euc-kr">
</head>
<form name="frm" method="post" action="test2.asp">
 <input name="txtTest" type="textbox" maxlength="1" value="롷">
 <input type="button" onClick="frm.submit();" value="전송">
</form>


===== test2.asp =====
<%
strTest = Trim(Request("txtTest"))
response.write strTest & "<br>"
response.write Len(strTest) & "<br>"
For i = 1 To Len(strTest)
 response.write i & ")" & Mid(strTest, i, 1) & ".<br>"
Next
%>


---------------------------------------------------------------------------------------------

궁금한 것은 1) 왜 네이버등은 euc-kr을 사용하는 것입니까?

완성형코드(euc-kr) 가 표준이기에 대부분의 모든 사이트에서 사용합니다.


궁금한 것은 2) euc-kr에서 롷과 같은 문자가 정상적으로 들어가도록 하는 방법이 없나요?

방법은 meta 태그를 님처럼 ks_c_5601-1987 으로 사용하거나 Script 에서 변경하여 입력하는 방법외에는 없습니다.

PHP에서는 iconv 를 사용합니다.


궁금한 것은 3) euc-kr, ks_c_5601-1987 둘중 어느것을 사용해야 하나요? 장단점은요.

솔직히 장단점은 잘 모르겠습니다.

euc-kr 을 사용하게 되면 "롷" 같이 정의 되지 않은 문자의 경우의 문제점이 있다는 것이구요.

ks_c_5601-1987 를 사용하게 되면 IE는 굴림이 기본으로 나오는데 모질라 계열은 바탕체가 기본으로 나와 보기가 좀 그렇습니다.

 

문제를 간단하게 해결하려고 생각한다면 ks_c_5601-1987 를 사용해도 좋은듯 합니다. 저는 개인적으로 euc-kr 를 사용하고 확장된 형태가 필요할때는 UTF-8를 고려합니다.

 출처 : http://www.ihelpers.co.kr/programming/qna.php?CMD=view&IDX=8397&source=naverclick

Trackback 0 Comment 0