论坛转换网's Archiver

gamenp 发表于 2008-4-1 16:39

安装勋章插件出现的问题

今天论坛装上勋章插件出现了下面几个问题
一是用户显示该用户已被删除
[attach]8[/attach]
二是出现会员勋章混乱 在DZ官方上面找不到解决方法幸好一位朋友介绍偶来这里希望老大帮忙解决一下 谢谢咯

网址:[url]http://bbs.gamenp.com[/url]

白乐天 发表于 2008-4-1 20:25

没看到这个帖子。你把地址贴出来,装的哪个勋章插件,具体操作步骤,都说清楚。

gamenp 发表于 2008-4-1 23:13

帖子地址是:[url]http://bbs.gamenp.com/thread-145077-1-1.html[/url]
装勋章插件是:久久勋章中心([url]http://bbs.99dipan.com[/url])

具体操作步骤:
安装注意事项:
1.修改的文件有 admin/misc.inc.php  include/cache.func.php  如果你没改动过这两个文件,直接覆盖即可 [友情提示,覆盖前请做好备份,以防覆盖出错]
修改的地方:你用editplus 打开这两个文件后 查找 `medals` 对照你先前的文件进行相应修改即可。
cache.func.php 的第1280行 $extcredits = array('extcredits1'=>'金币','extcredits2'=>'U币','extcredits3'=>'好评','extcredits4'=>'威望'); 修改成你们论坛采用的积分.
2.其他文件为新增文件直接上传即可。
3.include/crons/medal_hourly.inc.php为自动办法摘除勋章的执行文件。这个要根据你们的论坛的实际情况进行修改。[不明白的地方可以上论坛咨询]  自动执行操作:进入后台->其他设置-〉计划任务->新增。
或者直接运行SQL语句:

INSERT INTO `cdb_crons` (`available`, `type`, `name`, `filename`, `lastrun`, `nextrun`, `weekday`, `day`, `hour`, `minute`) VALUES
(1, 'user', '自动颁发勋章', 'medal_hourly.inc.php', 1191168006, 1191254400, -1, -1, 0, '0');

白乐天 发表于 2008-4-1 23:40

把插件的安装包发一个上来。或者下载地址。

gamenp 发表于 2008-4-2 01:52

已经发给你了  麻烦了

白乐天 发表于 2008-4-2 12:12

你打开medal_hourly.inc.php

查找下列内容
[quote]//贴图大师勋章颁发 medalid=8
$querymedal5 = $db->query("SELECT * FROM {$tablepre}medals WHERE medalid = 8");       
if($medal5 = @$db->fetch_array($querymedal5)) {
        $querytt = $db->query("SELECT count(*) as threadnum ,authorid FROM {$tablepre}threads WHERE fid in ([color=Red]4[/color]) GROUP BY authorid ORDER BY threadnum DESC LIMIT 1");
        $tn = @$db->fetch_array($querytt);
        $query5 = $db->query("SELECT m.uid, m.username, mf.medals FROM {$tablepre}members m,{$tablepre}memberfields mf WHERE m.uid = mf.uid AND m.uid=".$tn[authorid]);
        if($rt5 = @$db->fetch_array($query5)) {
                banfa($medal5,$rt5,'成为论坛贴图大师');
        }
}
//影音大师勋章颁发 medalid=14
$querymedal6 = $db->query("SELECT * FROM {$tablepre}medals WHERE medalid = 14");       
if($medal6 = @$db->fetch_array($querymedal6)) {
        $queryyy = $db->query("SELECT count(*) as threadnum ,authorid FROM {$tablepre}threads WHERE fid in ([color=Red]53,73,79,75,85[/color]) GROUP BY authorid ORDER BY threadnum DESC LIMIT 1");
        $yn = @$db->fetch_array($queryyy);
        $query6 = $db->query("SELECT m.uid, m.username, mf.medals FROM {$tablepre}members m,{$tablepre}memberfields mf WHERE m.uid = mf.uid AND m.uid=".$yn[authorid]);
        if($rt6 = @$db->fetch_array($query6)) {
                banfa($medal6,$rt6,'成为论坛影音大师');
        }
}
//动漫大师勋章颁发 medalid=16
$querymedal7 = $db->query("SELECT * FROM {$tablepre}medals WHERE medalid = 16");       
if($medal7 = @$db->fetch_array($querymedal7)) {
        $querydm = $db->query("SELECT count(*) as threadnum ,authorid FROM {$tablepre}threads WHERE fid in ([color=Red]77,90,93,94,95[/color]) GROUP BY authorid ORDER BY threadnum DESC LIMIT 1");
        $td = @$db->fetch_array($querydm);
        $query7 = $db->query("SELECT m.uid, m.username, mf.medals FROM {$tablepre}members m,{$tablepre}memberfields mf WHERE m.uid = mf.uid AND m.uid=".$td[authorid]);
        if($rt7 = @$db->fetch_array($query7)) {
                banfa($medal7,$rt7,'成为论坛动漫大师');
        }
}[/quote]

其中红数字的地方,你要修改为相应版块的fid.

比如你的贴图版块fid为 1,那么第一个红字地方就填1(多个贴图版,fid之间用逗号分隔)

其他两处修改方法一样,按照你的的影音版,动漫版的实际fid填写。

修改之后,进论坛后台,其他设置,计划任务中的 自动颁发勋章 [立即执行]

gamenp 发表于 2008-4-2 17:16

我的意思是那显示该用户已被删除和原来我发过勋章的用户怎么解决他们原来的勋章呢

[[i] 本帖最后由 gamenp 于 2008-4-2 20:38 编辑 [/i]]

白乐天 发表于 2008-4-4 12:10

你按照我的操作仍然这样?那你就删掉这个人的勋章,再执行那个计划任务一次。

页: [1]

Powered by Discuz! Archiver 7.0.0  © 2001-2009 Comsenz Inc.