글내용에 금칙어 표시제한 적용
bbs/ajax.filter.php
break 부분은 주석처리 (글작성시 필터링 하는 기능 비활성)
[code]
for ($i=0; $i<count($filter); $i++) {
$str = $filter[$i];
// 제목 필터링 (찾으면 중지)
$subj = "";
$pos = stripos($subject, $str);
if ($pos !== false) {
$subj = $str;
//break;
}
// 내용 필터링 (찾으면 중지)
$cont = "";
$pos = stripos($content, $str);
if ($pos !== false) {
$cont = $str;
//break;
}
}
die("{\"subject\":\"$subj\",\"content\":\"$cont\"}");
[/code]
lib/common.lib.php
conv_content 함수 return 부분 바로 위쪽 부터 수정
[code]
$content = conv_abuse($content);
return $content;
}
// 금칙어 검열 변환 (관리자로그인 상태시 필터없이 그대로 표시)
function conv_abuse($content) {
global $config, $is_admin;
$abuse_filter = explode(",", trim($config['cf_filter']));
for ($i=0; $i<count($abuse_filter); $i++) {
if(!$is_admin) $content = $content = str_replace($abuse_filter[$i], '<strike>금칙어</strike>', $content);
}
return $content;
}
[/code]
lib/common.lib.php
글 제목에 금칙어 변환
[code]
// 아래 함수 적당한곳에 추가
function conv_abuse_subject($subject) {
global $config, $is_admin;
$abuse_filter = explode(",", trim($config['cf_filter']));
for ($i=0; $i<count($abuse_filter); $i++) {
if($is_admin != 'super') {
$abuse_char = '';
for($j=0; $j<mb_strlen($abuse_filter[$i], "UTF-8"); $j++) $abuse_char .= '*';
$subject = str_replace($abuse_filter[$i], $abuse_char, $subject);
}
}
return $subject;
}
[/code]
lib/common.lib.php 의 get_text 함수 상단에 아래 1줄 추가
[code]
function get_text($str, $html=0, $restore=false)
{
$str = conv_abuse_subject($str);
[/code]
글작성시 금칙어가 있어도 글 등록은 가능하지만 표시만 제한하도록 변경하는 방법입니다.
금칙어 치환 표시부분은 페이지에 맞게 변형하세요.
<참고>
글 수정시에만 작성 당시 금칙어가 그대로 보여집니다.
향후 ajax로 댓글 원본 가져오는 기능 추가 예정.
댓글 7개
게시글 목록
| 번호 | 제목 |
|---|---|
| 23966 | |
| 23963 | |
| 23953 | |
| 23949 | |
| 23938 | |
| 23935 | |
| 23933 | |
| 23928 | |
| 23919 | |
| 23918 | |
| 23917 | |
| 23910 | |
| 23902 | |
| 23901 | |
| 23897 | |
| 23894 | |
| 23893 | |
| 23891 | |
| 23885 | |
| 23872 | |
| 23870 | |
| 23862 | |
| 23859 | |
| 23853 | |
| 23845 | |
| 23838 | |
| 23827 | |
| 23819 | |
| 23805 | |
| 23801 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기