2009/04/26 18:42

>> 문제상황
  사용자 메시지를 보여주기 위해 다음과 같이 구현하였다.

그런데, 사용자 메시지(userMessage)에 쌍따옴표가 포함된 경우,
쌍따옴표로 인해 의도하지 않게 해석되어 메시지가 잘려버리게 된다.

메시지(userMessage)가 아래와 같을때

수익자가 "채무자"입니다. 확인하세요.

다음과 같은 HTML코드가 생성된다.

화면에 출력되는 내용은   

수익자가

=> 채무자 앞의 쌍따옴표가 value속성의 값을 닫는 기호로 인식되어 뒤에 따라오는 내용이 잘려버렸다.


>> 해결방법
  간단히 다음과 같은 태그라이브러리를 구현하였다. 쌍따옴표를 HTML 특수문자인 " 로 치환한다.





Posted by kimgisa.net
2009/04/26 18:29

테이블 레코드의 데이터에 공백 문자가 2bytes 전각문자로 기록되어 있는 경우,
Trailing space를 제거하기 위해 trim()함수를 사용해도 제거되지 않는다.

오라클에서는 전각문자를 그에 상응하는 single byte 문자로 치환해 주는 내장함수를
제공한다.

이 함수를 사용하는 경우 2byte로 된 영문자, 숫자, 공백 등이 모두 1byte문자로 치환된다.

to_single_byte()




(참고) 반대로, single byte를 multi byte문자로 치환하려면 to_multi_byte() 함수를 사용하면 된다.

Posted by kimgisa.net