技术笔记
一名已转行的程序员DESTOON发布信息非法关键词,提示代码
2017-02-21 / 代码笔记 / 534 次围观 / 0 次吐槽现在用destoon的都知道,由于很多会员会发布一些违法的关键词,为了屏蔽这些,会在dt后台添加词语过滤拦截的功能。但是也有些destoon用户发现了一个问题,当一些会员发信息的内容中,包含了非法关键词,dt只会拦截,而不会提醒会员,是拦截了那个非法词,这样很不利于用户体验。。。。有木有。如果是程序能提示用户,是拦截了什么非法关键词的话,用户就能很快的找到对应的关键词,进行修改发布,能很好的留住企事业会员。
下面,我分享一下本站是怎么做的。
第一步:
在程序对应位子中找到include.inc.php
\lang\zh-cn\include.inc.php
在include.inc.php,文件中的
后面加上以下提示代码
第二步:
在程序对应位子中找到global.func.php
\include\global.func.php
下面,我分享一下本站是怎么做的。
第一步:
在程序对应位子中找到include.inc.php
\lang\zh-cn\include.inc.php
在include.inc.php,文件中的
$L['defend_proxy'] = '请不要使用代理访问本站';
后面加上以下提示代码
$L['msg_word_ban'] = '提交的内容含有被网站禁止的字符:{V0}';
第二步:
在程序对应位子中找到global.func.php
\include\global.func.php
在文件中找到在437行左右。
function banword($WORD, $string, $extend = true) { $string = stripslashes($string); foreach($WORD as $v) { $v[0] = preg_quote($v[0]); $v[0] = str_replace('/', '\/', $v[0]); $v[0] = str_replace("\*", ".*", $v[0]); if($v[2] && $extend) { if(preg_match("/".$v[0]."/i", $string)) dalert(lang('include->msg_word_ban')); } else { if($string == '') break; if(preg_match("/".$v[0]."/i", $string)) $string = preg_replace("/".$v[0]."/i", $v[1], $string); } } return addslashes($string); }替换成下面这个
function banword($WORD, $string, $extend = true) { $string = stripslashes($string); foreach($WORD as $v) { $v[0] = preg_quote($v[0]); $v[0] = str_replace('/', '\/', $v[0]); $v[0] = str_replace("\*", ".*", $v[0]); if($v[2] && $extend) { if(preg_match("/".$v[0]."/i", $string)) dalert(lang('include->msg_word_ban',array($v[0]))); } else { if($string == '') break; if(preg_match("/".$v[0]."/i", $string)) $string = preg_replace("/".$v[0]."/i", $v[1], $string); } } return addslashes($string); }
推荐您阅读更多有关于“”的文章
- 上一篇:php输出多出引号,造成顶部空行
- 下一篇:微信公众号判断用户是否关注自己php代码
Powered By Z-BlogPHP
Copyright 技术笔记 Rights Reserved.
额 本文暂时没人评论 来添加一个吧
发表评论