限制重复发贴 For Discuz! All Version
核心修改打开 include\newthread.inc.php查找:
if($subject == '' || $message == '') {
showmessage('post_sm_isnull');
}
在后面一行添加:
// 限制重复发贴 BY 三人行【客服】天佑 QQ:121298824
if($repeated == 1) {
$query = $db->query("SELECT tid, subject FROM {$tablepre}threads WHERE
authorid='$discuz_uid' AND subject='$subject'");
if($db->num_rows($query)) {
$repeat = $db->fetch_array($query);
showmessage('post_repeated', 'index.php');
}
} elseif ($repeated == 2) {
$query = $db->query("SELECT tid, subject FROM {$tablepre}threads WHERE
subject='$subject'");
if($db->num_rows($query)) {
$repeat = $db->fetch_array($query);
showmessage('post_repeated', 'index.php');
}
} elseif ($repeated == 3) {
$query = $db->query("SELECT tid, authorid, subject, message FROM
{$tablepre}posts WHERE first='1' AND subject='$subject'");
if($db->num_rows($query)) {
$repeat = $db->fetch_array($query);
if($repeat['authorid'] == $discuz_uid) {
showmessage('post_repeated', 'index.php');
}
function SubString($str, $start, $len = 0xFFFFFFFF) {
if($start < 0) {
$start = strlen($str) + $start;
}
if($len < 0) {
$len = strlen($str) - $start + $len;
}
$tmp = '';
$result = '';
$strlen = strlen($str);
$begin = 0;
$subLen = 0;
for($i = 0; $i < $start + $len && $i < $strlen; $i++) {
if($i < $start) {
if(ord($str[$i]) >= 161 && ord($str[$i]) <=
247 && ord($str[$i+1]) >= 161 && ord($str[$i+1]) <= 254) $i++;
} else {
$begin=$i;
for(; $i<$start+$len && $i<$strlen; $i++) {
if(ord($str[$i]) >= 161 && ord
($str[$i]) <= 247 && ord($str[$i+1])>=161 && ord($str[$i+1])<=254) $i++;
}
return substr($str,$begin,$i-$begin);
}
}
}
if(strlen($message) > 60) {
if(SubString($message, -100) == SubString($repeat
['message'], -100) || SubString($message, 50, 100) == SubString($repeat['message'], 50,
100)) {
showmessage('post_repeated', 'index.php');
}
} else {
if($message == SubString($repeat['message'], 0, 60)) {
showmessage('post_repeated', 'index.php');
}
}
}
}
// 限制重复发贴 BY 三人行【客服】天佑 QQ:121298824
添加提示信息打开:templates\default\messages.lang.php
查找:
'post_net_price_iszero' => '您的主题售价扣除积分交易税后为 0,请返回修改。',
在后面一行添加:
'post_repeated' => '您所发布的主题已存在:《<a href=\"viewthread.php?tid=$repeat
\" target=\"_blank\">$repeat</a>》请勿重复发布。',
添加设置打开:config.inc.php
在最后添加一段:
$repeated = 0; //设置防范重复发贴的级别,0=关闭,1=防范相同ID发布相同标题
的新主题,2=防范发布相同标题的新主题,3=防范发布相同标题且内容部分相同的新主题
您可根据自己的需要,随时更改 $repeated 的数值,以关闭或开启限制重复发贴不同的防范级别。
完成!后台更新缓存。
[ 本帖最后由 千寻 于 2008-3-18 16:47 编辑 ] 不懂了也~! 我晕死
复制 年贴 :lol :lol 如果标题一样就禁止重复发贴了
页:
[1]