改了一天嘿嘿
打上原创标记有点问心有愧啊,不过这个插件改的动作挺大的。原作者很多地方都没写的很细。比如题目居然可以插入script代码等等。问答的安全机制用的是本地log文件,作弊的可能性应该不大了。改动挺多的,就算俺半原创吧
//--------------------------------------------------------------------
//开心词典
//修改:FY(文文の封印)
//原作:loveyuki
//适用:Discuz! 2.5 SP1 系列
//修改文件:cache.php,actions.lang.php
//占用资源:少
//技术支持:discuz.dismall.com www.freediscuz.net
//个人网站:www.dyxs.cn
//联系信箱:sakura-boy@163.com
//--------------------------------------------------------------------
欲装插件,先装银行
若装银行,定当成功
如不银行,绝对白版
数据库升级:
- ALTER TABLE `cdb_members` ADD `htestnum` SMALLINT( 6 ) DEFAULT '0' NOT NULL ;
- ALTER TABLE `cdb_members` ADD `htestrnum` SMALLINT( 6 ) DEFAULT '0' NOT NULL ;
- ALTER TABLE `cdb_members` ADD `htestunum` SMALLINT( 6 ) DEFAULT '0' NOT NULL ;
复制代码
上传附件中的shuju.php然后运行,导入数据
然后改cache.php
找到
- 'pm' => array('bbcodes','smilies'),
复制代码
后面加
- 'htest' => array('htestclassid','htestuanum'),
复制代码
找到
- case ranks:
- $table = $GLOBALS['table_ranks'];
- $cols='ranktitle,postshigher,stars,color';
- $conditions = "WHERE 1 ORDER BY postshigher desc";
- break;
复制代码
后面加
- case htestclassid:
- $table = $GLOBALS['table_htest_class'];
- break;
- case htestuanum:
- $table = $GLOBALS['table_htest_data'];
- $cols= 'count(hid)';
- $conditions = "WHERE tallow='0'";
- break;
复制代码
找到
- $query = $db->query("SELECT $cols FROM $table $conditions");
- switch($cachename) {
复制代码
后面加
- case htestuanum:
- $data = $db->result($query,0);
- break;
复制代码
上传upload目录下所有文件,导入插件数据
更新cache,后台进行一些设置
如果想显示动作,就打开actions.lang.php,找个合适位置,加上
如果白版,就打开根目录的plugins.php
找到
上面加
- function getinfo($plugname){
- global $plugins_script;
- if (!in_array($plugname,$plugins_script)) return '';
- @include DISCUZ_ROOT.'./forumdata/cache/cache_plugins.php';
- return $_DCACHE['plugins'][$plugname];
- }
复制代码
就行了
搞定~
[ 本帖最后由 文文の封印 于 2005-8-10 18:25 编辑 ] |