11.Nas_1


새창 작성 수정 목록 링크 Edit G카랜다 HDD HDD HDD 게시물 주소 복사


[ClassicASP] 모든 태그 제거 & 허용태그 외의 모든 html 태그 제거 (2012-04-18 수정)

♨ 카랜더 일정 :
  • 링크

  • 첨부

  • 컨텐츠 정보

    본문

    \r\n
    \r\n
    [ClassicASP] 모든 태그 제거 & 허용태그 외의 모든 html 태그 제거 (2012-04-18 수정)글자 확대 글자 축소
    \r\n
      2012-04-17 22:22 Hit.560 트랙백주소 게시글을 twitter로 보내기 게시글을 facebook으로 보내기 게시글을 Me2Day로 보내기 이 게시글을 요즘으로 보내기 게시글을 구글로 북마크 하기 게시글을 네이버로 북마크 하기
    \r\n
    \r\n
    \r\n
    \r\n
    <% Option Explicit %>
    \r\n

    <%
    \r\n
    \r\n
    ' =========================================================
    \r\n
    ' 패턴으로 치환할수 있는 eregi_replace()함수
    \r\n
    ' PHP에는 있으나 ASP에는 없기 때문
    \r\n
    ' =========================================================
    \r\n
    Function eregi_replace(pattern, replace, text)
    \r\n
     Dim eregObj
    \r\n
     
    \r\n
     Set eregObj = New RegExp
    \r\n
     
    \r\n
     eregObj.Pattern = pattern '패턴 설정
    \r\n
     eregObj.IgnoreCase = True '대소문자 구분 여부
    \r\n
     eregObj.Global = True '전체 문서에서 검색
    \r\n
     
    \r\n
     eregi_replace = eregObj.Replace(text, replace) 'Replace String
    \r\n
    End Function
    \r\n
     
    \r\n
     
    \r\n
    ' =========================================================
    \r\n
    ' 모든 태그제거
    \r\n
    ' 사용법 : strip_tags1(content)
    \r\n
    ' content = "....."
    \r\n
    ' strip_tags2(content)
    \r\n
    ' =========================================================
    \r\n
    Function strip_tags1(str)
    \r\n
      Dim content
    \r\n

      content = str  
    \r\n
      content = eregi_replace("<(/)?([a-zA-Z]*)(\\s[a-zA-Z]*=[^>]*)?(\\s)*(/)?>","",content)  ' all
    \r\n
      content = eregi_replace("<(no)?script[^>]*>.*?</(no)?script>","",content)  ' scripts
    \r\n
      content = eregi_replace("<style[^>]*>.*</style>", "", content)  ' style
    \r\n
      content = eregi_replace("<(\""[^\""]*\""|\'[^\']*\'|[^\'\"">])*>","",content)  ' TAGS
    \r\n
      content = eregi_replace("<\\w+\\s+[^<]*\\s*>","",content)  ' nTAGS
    \r\n
      content = eregi_replace("&[^;]+;","",content)  ' entity_refs
    \r\n
      content = eregi_replace("\\s\\s+","",content)  ' whitespace
    \r\n

      strip_tags1 = content
    \r\n
    End Function
    \r\n
     
    \r\n
     
    \r\n
    ' =========================================================
    \r\n
    ' 허용태그 외의 모든 태그제거
    \r\n
    ' 사용법 : strip_tags2(content, allowtags)
    \r\n
    ' content = "....."
    \r\n
    ' allowtags = "br,a,img,table,b,font,div,center,embed"  ' 허용 ※ 태그 붙여서 연속으로, 공백 오류발생
    \r\n
    ' strip_tags2(content, allowtags)
    \r\n
    ' =========================================================
    \r\n
    Function strip_tags2(str,allowtags)
    \r\n
      Dim content, tags
    \r\n
     
    \r\n
      content = str
    \r\n
      tags = replace(allowtags,",","|")
    \r\n
      content = eregi_replace("<(/?)(?!/|" & tags & ")([^<>]*)?>","<$1$2&gt",content)
    \r\n
      content = eregi_replace("(javascript|vbscript)+","$1//",content)
    \r\n
      content = eregi_replace("(.location|location.|onload=|.cookie|alert|window.open|onmouse|onkey|onclick|view-source)+","//",content) '//자바스크립트 실행방지
    \r\n
     
    \r\n
      strip_tags2 = content
    \r\n
    End Function
    \r\n
     
    \r\n
     
    \r\n
    '사용예
    \r\n
    Dim allowtags, content
    \r\n
    allowtags = "br,a,img,b,font,div,center,embed"  ' 허용 ※ 태그 붙여서 연속으로, 공백 오류발생
    \r\n
     
    \r\n
    content = "<font color=red>허용하지 않은 태그</font>가<br />잘 <b>보이나요?</b><br /><script></script>"
    \r\n
    content = content & "<table><div align=center>아주 유용할꺼에요~</div><body><html><xmp><pre>"
    \r\n
     
    \r\n
    response.write "strip_tags1 결과<br />"& strip_tags1(content) &"<br /><br />"
    \r\n
    response.write "strip_tags2 결과<br />"& strip_tags2(content, allowtags)
    \r\n
    %>
    \r\n

    결과


    <소스보기>
    \r\n
    strip_tags1 결과
    \r\n
    허용하지 않은 태그가잘 보이나요?아주 유용할꺼에요~
    \r\n
     
    \r\n
    strip_tags2 결과
    \r\n
    <font color=red>허용하지 않은 태그</font>가<br />잘 <b>보이나요?</b><br /><script&gt</script&gt<table&gt<div align=center>아주 유용할꺼에요~</div><body><html&gt<xmp&gt<pre&gt


    참고자료
    http://flashcafe.org/3717 
    http://dualist.tistory.com/115
    \r\n

    \n
    [이 게시물은 관리자님에 의해 2013-11-18 21:29:50 11.H_BBS에서 이동 됨]
    [ 추가 정보 ... 더보기) ]
    뷰PDF 1,2



    office view

    관련자료

    댓글목록

    등록된 댓글이 없습니다.

    목록

    새창 작성 수정 목록 링크 Edit G카랜다 HDD HDD HDD 게시물 주소 복사




    Total 1,684 / 60 Page
    [ G메일이 사진이 표시 되지 않는다 해결 방법. ]

    ■ G메일이 사진이 표시 되지 않는다 해결 방법.□ 해결 방법: 익스플로러 상단 메뉴에서 [도구>인터넷 옵션>보안>사용자 지정 …

    [ ckfinder config ] 댓글 1

    ♥\r\n\r\n\r\n\r\n◎ 네이버에서 [https://11q.kr 홈피] 검색 찾아오세요 ◎ \n[이 게시물은 홈피관리자님에 의해 201…

    [ MyDisk 1.0.0 - 회원 공유 형식의 심플한 웹하드 ]

    ♥◎ 네이버에서 [https://11q.kr 홈피] 검색 찾아오세요 ◎http://sir.co.kr/bbs/board.php?bo_table=g…

    [ 리눅스에서는 몇가지 중요한 명령어들을 사용하는 것이 기본이라 할 수 있습니다 ]

    \r\n웹문서\r\n\r\n[DOC] \r\n\r\n\r\n\r\n리눅스에서는 몇가지 중요한 명령어들을 사용하는 것이 기본이라 할 ...\r\n…

    [ 글쓰기창 에러 cheditor5 추가 /config.php 아래 추가 ]

    // 글쓰기창 에러 cheditor5 추가 /config.php 아래 추가\r\n$g4['cheditor4'] = "cheditor4";\r\n…

    [ [팁소스] 최고 관리자 자동로그인 되게하기_성공 ]

    그누보드는 최고관리자는 자동로그인이 안되게끔 해두었습니다. 타인이 접속할 경우가 없다면 관리자도 자동로그인이 되면 편합니다.common.php …

    [ 아미나 림스모바일 움직인는 gif 추가하기 ]

    .첨부를 아미나 림스모바일에 index.php에 추가\r\n<!-- 베너 또는 그림 추가 불러오기 m/head.php 시작 -->\r…

    [ 관리자 특정게시물 비밀번호 게시 공지 ]

    ..Shims HomePage[https://11q.kr 홈피] .\n[이 게시물은 관리자님에 의해 2013-11-18 21:29:50 11.H…

    [ 하단메뉴 모바일 이동및 로그인 추가 ]

    <!-- 아미나 하단에 login 모바일 이동 추가하기 w:\pc\amina\thema\basic\html\footer.php에서 추가 -…

    [ 갤러리형 최근글 리스트스킨 - basic_gallery ] 댓글 2

    갤러리형 최근글 리스트스킨 - basic_galleryAD한별아빠신고글주소트랙백스크랩00조회391목록2013.04.21 00:30첨부파일 -ba…

    [ 부띠끄 로테이션 최근 게시물 ]

    부띠끄 로테이션 최근 게시물\r\n\r\n\r\n시하\r\n작성일시2011.10.14 00:45:10\r\n조회6,281\r\n댓글70관련링크\…

    [ 최고관리자 자동로그인 가능하게 하기 extend 디렉토리에 추가및 초기자동로그인후 한글깨지고 다시 로당시 이… ]

    \r\n\r\n\r\n\r\n최고관리자 자동로그인 가능하게 하기 extend 디렉토리에 추가및 초기자동로그인후 한글깨지고 다시 로당시 이상무최고…

    [ g4(배추라이트)와 amina v3 스킨/테마 모바일 적용 ]

    g4(배추라이트)와 amina v3 스킨/테마 모바일 적용\r\n\r\n1) 배추 빌더라이트 정상설치\r\n- 주) 아미나테마 적용카피전 아미나…

    [ 그룹 메뉴 시작 // 배추빌더 라이트에서 head.php에서 그룹메뉴시작 다음줄에 아래 추가하면 메뉴 첫번… ]

    <!-- 그룹 메뉴 시작 // 배추빌더 라이트에서 head.php에서 그룹메뉴시작 다음줄에 아래 추가하면 메뉴 첫번째 메인으로 메뉴 추가-…

    [ 웹캠으로 nas 시놀로지에 카메라를 붙이자 ] 댓글 12

    웹캠으로 nas 시놀로지에 카메라를 붙이자http://forum.synology.com/enu/viewtopic.php?p=191016#p191…

    [ pc에서 diskstation web 접속불가 ]

    갑자기 diskstation및 web 홈페이지가 접속 되지 안는다공유기에 80,5000퐅트를 포트 포워드 하면 해결###■ https://11q…

    [ sftp / webftp /Secure FTP Applet Connection reset by peer:so… ]

    11q.kr 는 네이버/구글에서 검색 찾아오세요------------------------------------------------------…


    ♥간단_메모글♥


    최근글


    새댓글



    PHP 안에 HTML ☞ 홈페이지 화면갱신 시간은 ♨
    ▶ 2024-07-01 15:00:49

    오늘의 홈 현황


    • 현재 접속자♨ 657 명
    • 오늘 가입자※ 0 명
    • 어제 가입자※ 4 명
    • 주간 가입자※ 12 명
    • 오늘 방문자 1,603 명
    • 어제 방문자 1,787 명
    • 최대 방문자 13,042 명
    • 전체 방문자 4,406,653 명
    • 전체 게시물※ 8,671 개
    • 전체 댓글수※ 24,812 개
    • 전체 회원수 11,078 명

    QR코드


    ☞ QR코드 스캔은 kakao앱 자체 QR코드

    알림 0








    최신글↑