HTML에서의 &, < , > 등을 표현할 때는 직접 표현할 수 없고, html 엔티티 형식으로 나타내야하는데, JS의
연산자 등에서는 & , < , >를 직접 써야하므로 HTML 규칙에 어긋나게 된다. 그 부분을 무시하게 하기 위해서
주석처리( xHTML은 CDATA처리)를 해주게 된다.
HTML entity
HTML에서는 & , < , > 등을 직접나타내면 안된다. & , < ,
> 로 변환해서 나타내야한다.
HTML entity 는 HTML속 attribute나 text-node 에서 전부 적용되야 HTML 규칙에 맞게된다.
적용 안해도 브라우저에서 대부분 처리해준다.
HTML validator는 통과할 수 없다.
Magic Quotes (PHP)
Magic Quotes 란
When on, all ' (single-quote), " (double quote),
\ (backslash) and NULL characters are escaped with a backslash
automatically. This is identical to what addslashes() does. (메뉴얼 발취)
' , " , \ , NULL 글자에 대해서 자동으로 \를 붙여준다.(addslashes() 참고)
효과는 SQL-injection 방지...
PHP 5.3에서는 DEPRECATED , PHP6에서는 REMOVE다. 즉, 사용하지 않는 것을 기준으로 작업하라
Magic Quotes 문제점
\ 자동으로 \가 붙어서 \\ 형식이 되는데, DB가 ORACLE 일 경우 escape 처리자가 \가 아니라서 게시판 등에서 수정을 할 때마다 \\ -> \\\\ -> \\\\\\\\ 처럼 된다. ' 를 기준으로 보면 \' -> \\' -> \\\\' 처럼 된다.