2013-01-13 5 views
3

일부 소수의 사람들이 자신의 기사와 항목을 제출할 수있는 블로그를 관리하고 있습니다. HTML을 통해 비디오를 삽입 할 수 있기를 바랍니다. (굵게, 기울임 꼴 등을 선택하여 텍스트를 표시 할 수 있습니다.) 사이트 보안을 유지하면서 어떻게해야합니까?HTML은 일부 문자와 문자 조합 만 이스케이프합니까?

HTML이 실제 아티클 스페이스를 이스케이프 처리하지 않으면 열려있는 주석이 내 사이트를 망칠 것입니다. 문자의 조합을 선택적으로 탈출시킬 수있는 방법이 있습니까?

편집; 잘하면 내 파서를 쓰지 않고. 난 단지 <b>, <i> 등 간단한 태그를 이스케이프 처리하고 비디오와 링크를 임베딩해야한다.

+0

당신은 어떤 언어를 사용하고 있는지 말하지는 않지만, 자신 만의 파서를 작성하지 않아도 될 가능성이 있습니다. HTML 구문 분석은 해결 된 문제이며 패키지가 풍부합니다. –

+0

PHP와 HTML로 질문을 태그했습니다. – gator

+0

그런 다음 여기에서 시작하십시오. http://stackoverflow.com/questions/292926/robust-mature-html-parser-for-php –

답변

3

내가 사용하는 것을 사용합니다. 그것은 opensource이고 많은 언어에 대한 파서를 가지고 있습니다.

이름은 입니다. WMD이고 질문은 "Where's the WMD editor open source project?"이고이 광고 편집기의 윤곽을 그리는 몇 가지 품질 보증 자료가 있습니다.

질문 "running showdown.js serverside to conver Markdown to HTML (in PHP)"에는 PHP의 Markdown 라이브러리에 대한 간략한 설명이 있습니다.

+1

주의 : 안전하게 실행하려면 자바 스크립트 코드의 서버 측 실행이 필요합니다 (예 : node.js * 또는 *를 통해 PHP에서 해당 확장의 javascript 코드와 비슷한 작동을하는 markdown 라이브러리처럼 compatbile이 있어야합니다. 이 두 번째 부분을 답에도 추가하는 것이 유용 할 수 있습니다. – hakre

+0

@hakre - 모든 언어가 파서를 소유 할 수있을 정도로 markdown이 일반적입니다. 비교적 쉽게 찾을 수 있습니다.나는 PHP 1에 대한 링크를 대답에 추가 할 것이다. –

0

대부분의 사이트 (예 : SO)에서 사용하는 가장 간단한 방법은 자신 만의 특별한 마크 업을 도입 한 다음 원하는 기능으로 변환하는 것입니다. (:이 답변의 소스를 볼 수있는 HTML 태그 <b></b> 자체 옆에 편집)

예를 들어, SO 이탤릭체하는 별표 (*) 및 (**) 대담한를 사용합니다.

다른 사이트는 [b][i] 태그를 사용합니다. [video=http://myvideo.com] 태그를 사용하면 PHP가 적절한 HTML 항목으로 변환합니다.

+1

SO에는 특별한 마크 업이 없습니다. * 마크 업 사양 btw에 따라 HTML 태그가 허용됩니다. 그래서 제기 된 질문에 답하지 않고 대신 더 배우기를 권합니다. 여기를 계속하십시오 : http://www.codinghorror.com/blog/2008/10/programming-is-hard-lets-go-shopping.html – hakre

+1

절대적으로 특별한 마크 업이 있습니다. HTML이 HTML과 함께 지원된다는 사실은이를 부정하지 않습니다. –

+0

글쎄, 그것은 이것을 부정하지 않지만, 당신의 대답은 하나가 아닙니다. 주어진 예제에서 작성자 *가 * 관련한 HTML 태그를 허용하는 특별한 마크 업을 가리켜 문제를 제거했습니다. – hakre

0

모든 것을 안전하게 HTML로 이스케이프 할 수 있습니다. 동영상의 URL은 사용자가 원하는 모든 탈출구의 영향을받지 않습니다.

관련 문제