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,755 / 82 Page
    [ 최종] 마운트하여 2개의 홈피 data 공유 하기 / config file edit dsm5.0 수정 정보… ] 댓글 9

    최종] 마운트하여 2개의 홈피 data 공유 하기\r\n\r\n마운트 하기 최종\r\n터미널 활성화\r\n\r\nPutty 실행\r\n\r\nm…

    [ sn_nas_up2)osfmount 사용 헤놀로지 XPENOLOGY VMWARE ,,New SERIAL MA… ] 댓글 23

    펌) 헤놀로지 새로운 시리얼과 MAC주소 생성기(test전)https://11q.kr/g5s/bbs/board.php?bo_table=s11&a…

    [ ● DSM 설치과정이 비정상적으로 중단된경우 접속 해결하기 ] 댓글 1

    ● DSM 설치과정이 비정상적으로 중단된경우 접속 해결하기헤놀로지를 물리파워버튼으로 자꾸 종료하시면 HDD에 무리가 갈수 있으니,가급적 teln…

    [ ● 정보)docker를 이용한 cloudflare 도메인 에서 certbot 인증서 생성 작업 포기 ]

    ● 정보)docker를 이용한cloudflare도메인 에서certbot인증서 생성 작업 포기내용정보만 참조주) 도커사용는 필요성??? ....&…

    [ Synology diskstation DS-712+ Mail 서버 만들기/Mail station 패캐지 설치… ] 댓글 3

    \r\n시놀로지 ds712 synology e-mail/email 설정/서버설정 (2012월3월9일up) 그누보드 이메일 설정하기 ,이메일의 모…

    [ 성공)시놀로지 작업스케줄러로 xmltv.xml만들어 도커 epg2xml를 epg그래버모듈 tv_grab_정보… ] 댓글 34

    성공)시놀로지 작업스케줄러로 xmltv.xml만들어 도커 epg2xml를 epg그래버모듈 tv_grab_정보 갱신 3초 스피트하게 업데이트 하기…

    [ ● nslookup을 사용하면 도메인네임, IP주소, 기타 DNS레코드를 알 수 있다. ]

    ●nslookup을 사용하면 도메인네임, IP주소, 기타 DNS레코드를 알 수 있다.윈도우 CMD 명령을 이용하여 원하시는 도메인의 DNS 레코…

    [ ●시놀로지작업) Nextcloud 인스턴스는 현재 점검 모드 유지 보수 모드 그리고 설치 조건 ]

    ●시놀로지작업)Nextcloud 인스턴스는 현재 점검 모드유지 보수 모드 그리고 설치 조건시놀로지 도커 사용조건업데이트 유지 보수(ssh 조건)…

    [ ●DSM 7에서 DSM 6으로 다운그레이드 및 응급 복구 방법 ]

    ●DSM 7에서 DSM 6으로 다운그레이드 및 응급 복구 방법https://www.blackvoid.club/dsm-7-to-dsm-6-down…

    [ 제나 빌드 베너 추가가 되지 않음 해결 방법 ] 댓글 1

    베너 추가가 되지 않음 해결 방법\r\n================== 문제점 ==============insert into g4_zp_ban…

    [ ● [VMWare] esxi 서버 멈춤증상 확인 check 하기 ] 댓글 1

    ●[VMWare] esxi 서버 멈춤증상 확인 check 하기 하드웨어는 메인보드에서 로그 확인해 보시면 되고(조립머신이면 없을 확률이 높습니다…

    [ ● 시놀로지 dsm 7.0 putty 명령어 systemctl로 저의 시스템 동작상태 및 ??? 명령어를 … ] 댓글 2

    ● 시놀로지 dsm 7.0 putty 명령어systemctl로 저의 시스템 동작상태 및 ??? 명령어를 실행 확인 으로 실행 중지 재시작 명령 …

    [ 스팸대응) 메일 릴레이대응 구글링 관련자료 펌업)다른 사람이 내 이메일을 사용하고 있나요? 이메일 스푸핑에… ] 댓글 32

    다른 사람이 내 이메일을 사용하고 있나요? 이메일 스푸핑에 대해 알아보기\r\n\r\n내 계정에서 보낸 것처럼 보이는 메일이 반송되었단 메일을 …

    [ ● 시놀로지 하이퍼 백업 에러 발생은 폴더 삭제시 발생 합니다 / SYNOLOGY HYPER BACKUP E… ]

    ● 시놀로지 하이퍼 백업 에러 발생은 폴더 삭제시 발생 합니다 / SYNOLOGY HYPER BACKUP ERROR원인 : 백업 폴더 설정에 있…

    [ 작업중● 구글 도메인 구입 등록 변경 벙법 및 사이트 11q.kr 에서 123q.me 사이트 도메인 변경 진… ] 댓글 8

    ● 구글 도메인 구입 등록 변경 벙법및 사이트 11q.kr 에서 123q.me 사이트 도메인 변경 진행중구글 도메인을 구입 사유1) 시놀로지 지…

    [ 가벼운 웹하드 정보 h5ai ] 댓글 11

    가벼운 웹하드 정보http://cafe.naver.com/synologynas/45201http://data.wsgvet.com/Public/h…


    ♥간단_메모글♥


    최근글


    새댓글



    PHP 안에 HTML ☞ 홈페이지 화면갱신 시간은 ♨
    ▶ 2024-06-11 19:58:31

    오늘의 홈 현황


    • 현재 접속자♨ 329 명
    • 오늘 가입자※ 2 명
    • 어제 가입자※ 7 명
    • 주간 가입자※ 23 명
    • 오늘 방문자 1,962 명
    • 어제 방문자 2,134 명
    • 최대 방문자 13,042 명
    • 전체 방문자 4,372,357 명
    • 전체 게시물※ 8,635 개
    • 전체 댓글수※ 24,725 개
    • 전체 회원수 11,036 명

    QR코드


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

    알림 0








    최신글↑