[php] 허용하지 않는 태그 걸러내기, 입력한 태그 재조정
로빈아빠
본문
허용하지 않는 태그 걸러내기, 입력한 태그 재조정
* 허용하지 않는 태그 걸러내기
nevertag($text);
하시면 $text에 내용중 허용하지 않는 태그는 걸러냅니다
* 입력한 태그 재조정 - 사용자가 입력한 html 조금은 더 안전하게 만드는 함수
$text="여기에 태그";
safehtml($text);
echo $text;
* 허용하지 않는 태그 걸러내기
nevertag($text);
하시면 $text에 내용중 허용하지 않는 태그는 걸러냅니다
/* 제작자이름 : 무화 제작자메일 : muhwa@yahoo.com 관련사이트 : http://muhwa.webice.co.kr */ <? function nevertag(&$text){ $nevertag="script|iframe|object|applet|base"; //여기에 불허용 태그를 넣습니다. 막대기로 연결하세요 $text = preg_replace("/<(\/?)(".$nevertag.")([^<>]*)?>/i", "<\\1\\2\\3>", $text); }
* 입력한 태그 재조정 - 사용자가 입력한 html 조금은 더 안전하게 만드는 함수
$text="여기에 태그";
safehtml($text);
echo $text;
<? function safehtml(&$text){ $text=preg_replace_callback("/\<(\/?)(\w+)*([^<>]*)>/" ,"addnoclosetag" ,$text); } function addnoclosetag($in){ $tags=" a img embed font b div center p br "; //허용태그입니다 스페이스바로 연결하세요 //첫번째칸과 마지막 칸에 반드시 공백이 있어야 합니다 $in[2]=strtolower($in[2]); if (strpos($tags, " ".$in[2]." ")) $add="<"; else $add="<"; if ($in[2]=="a" && !$in[1]) $in[2]="a target=\"_blank\"" ; //링크는 무조건 새창으로 열어야 안전하지 않을까해서요 $atts="on|javascript:|vbscript:|tpl:"; //속성중에 허용하지 않는것들입니다 막대기로 연결하세요 //이들은 모두 사라집니다 //on : 이벤트를 없애기 위해서 , 나머지:링크 유알엘로 부를수 있는 스크립트 언어들입니다 $in[3]=preg_replace("/($atts)/i","",$in[3]); return $add."$in[1]$in[2]$in[3]>"; } ?>
관련링크
댓글목록
등록된 댓글이 없습니다.