다음 중 어떤 방법으로해야하는지 궁금합니다. 나는 적절한 html 태그로 사용자 데이터를 포맷하는 작은 MCE wysiwyg 편집기를 사용하고 있습니다. 이제는 편집기에 입력 된이 데이터를 데이터베이스 테이블에 저장해야합니다.모범 사례. DB에 html 태그를 저장하거나 html 엔티티 값을 저장합니까?
DB에 삽입 할 때 해당 엔티티에 html 태그를 인코딩해야합니까? 그러면 테이블에서 데이터를 다시 가져올 때 XSS 용도로 인코딩 할 필요가 없지만 여전히 eval을 사용해야합니다. html 태그를 사용하여 텍스트 서식을 지정합니다.
또는
내가 그들의 실체에 html 태그를 인코딩 다시 데이터베이스에서 데이터를 얻을 때 난 후, 데이터베이스에 HTML 태그를 저장 않지만, 태그가 사용자에게 표시 될 다음, 나는 ' eval 함수를 사용하여 실제로 입력 된 데이터를 형식화해야합니다.제 생각에는 첫 번째 옵션이 있습니다. 나는 여러분이 생각한 것을 궁금해했습니다.
"필터 입력"이라고 말하면 무슨 뜻인지 알 수 있습니까? – phpNutt
나는 가능한 한 안전하게 애플리케이션을 만들고 싶다. htmlentities 함수를 사용하여 태그를 HTML 엔티티로 변환하면 더 안전하게 만들기위한 단계가 될 것이라고 생각했다. – phpNutt
@matt : 금지 된 태그를 제거하고 잘못된 마크 업을 수정하고 싶습니다. 그런 다음에 나가기 전에 변형, 추가 xss 필터링 등을 수행하기 위해 필터를 적용 할 수 있습니다. 하지만 db의 whats는 Adam N, brian_d 및 Earlz가 답변을 제시 할 때 기본 마크 업이되기를 원합니다. – prodigitalson