zoukankan      html  css  js  c++  java
  • DedeCms 积分/金币审核才增加

    大家应该知道原程序里的添加文章都是没审核就加了分的,但是对于靠会员的仁兄可能不想这样.

    有两个地方要改
    1 , *_add.php   (article_add.php会员发布文章或者软件等借口)里的一段增加积分的删除

       否则审核加分添加也加分

    //增加积分
     $dsql->ExecuteNoneQuery("Update `dede_member` set scores=scores+{$cfg_sendarc_scores} where mid='".$cfg_ml->M_ID."' ; ");

    很明显的一段句一直拉就有机会看到了
     

    2, 在dede目录下的archives_do.php 文件找到

    //审核文档
    function checkArchives() {   }
    在里面再找到
    $aid = $row['id'];
    在这个后面增加也可以。
    $dsql->ExecuteNoneQuery("Update `dede_member` set scores=scores+{$cfg_sendarc_scores} where mid=(select mid from `dede_arctiny` where id='$aid')");

    ----------------------------------------------------------------------------------------------------------------------

    织梦DEDECMS网站会员积分问题总结

    1、织梦dedecms5.5一般都是在会员发表完之后就把积分加上去了,对于文章投稿方式来说肯定不受用,万一来个灌水的,那分就high了去了,因此我们需要对这套系统进行修改,具体修改方法如下:

    第一步是在会员发表完文章之后不加积分,方法为:找到/member/article_add.php,找到//增加积分,将下面的代码注释掉。


    //增加积分
    //$dsql->ExecuteNoneQuery("Update `dede_member` set scores=scores+{$cfg_sendarc_scores} where mid='".$cfg_ml->M_ID."' ; ");


    第二步是找到后台审核文章的文件,即/dede/archives_do.php,找到审核文档的函数,function checkArchives(),然后找到$aid = $row['id'];,在下面添加:


    //审核后增加积分
    $dsql->ExecuteNoneQuery("Update `dede_member` set scores=scores+{$cfg_sendarc_scores} where mid=(select mid from `dede_arctiny` where id='$aid')");


    接下来就可以了,对于其他栏目来说,比如图片或者什么的,按照这个方法类推就可以了。


    同样,由于目前网络言论控制严格,我们不得不对会员的评论也要进行审核,然后我们也需要在后台审核后才能给会员加上评论得到的份数,方法和上面的类似,首先找到/plus/feedback_ajax.php,找到第180行,将以下代码注释掉:


    //$dsql->ExecuteNoneQuery("Update `dede_member` set scores=scores+{$cfg_sendfb_scores} where mid='{$cfg_ml->M_ID}' ");

    还有就是同样目录下的feedback.php文件,找到259行,将以下代码注释掉:

    //if($cfg_ml->M_ID > 0)
    //{
    // $dsql->ExecuteNoneQuery("Update `dede_member` set scores=scores+{$cfg_sendfb_scores} where mid='{$cfg_ml->M_ID}' ");
    //} 织梦模板团

    然后找到/dede/feedback_main.php,找到//审核评论,在下面的语句中加上: DEDE模板

    $dsql->ExecuteNoneQuery("Update `dede_member` set scores=scores+{$cfg_sendfb_scores} where mid in (select mid from `dede_feedback` where id in ($ids))");


    2、


    dede5.6 会员登录加积分每天只限一次解决方法


    首先把思路说一下:先先检测当前时间与上次登陆日期是否为同一天?如果是就不加积分。
    如果上次登陆日期与当前登陆日期不相等就加积分。


    具体修改代码为:include文件夹下memberlogin.class.php文件

    具体代码大概在370行


    原先代码

    //登录增加积分(上一次登录时间必须大于两小时)
    if(time() - $logintime > 7200 && $cfg_login_adds > 0)
    {
    $dsql->ExecuteNoneQuery("Update `dede_member` set `scores`=`scores`+{$cfg_login_adds} where mid='$uid' ");
    }
    $this->M_ID = $uid;
    $this->M_LoginTime = time();

    修改为:
    //登录增加积分(每天登陆加一次积分)
    $row = $dsql->GetOne("SELECT logintime FROM dede_member WHERE mid='$uid' ");
    $logintime = $row['logintime'];
    $timel = GetDateMk($logintime);
    $now = GetDateMk(time());
    if($timel!=$now)
    {
    $dsql->ExecuteNoneQuery("Update `dede_member` set `scores`=`scores`+{$cfg_login_adds} where mid='$uid' ");
    }


    $nowtime = GetDateTimeMk(time());
    $logint = GetMkTime($nowtime);
    $dsql->ExecuteNoneQuery("Update dede_member set logintime='$logint' where mid='$uid' ");

    $this->M_ID = $uid;
    $this->M_LoginTime = time();

    因为发现织梦dedecms 本身记录登陆时间不准 就加了个修改登陆时间的语句,用这种笨方法实现了。

  • 相关阅读:
    scp命令
    js代码片段
    js创建request对象与ajax请求
    多个action组成一个文件
    ng-option选项禁用
    IE日期
    ui-sortable
    P5多语言默认语言不生效BUG的解决办法
    防止多次点击提交按钮造成数据多次提交
    c#根据ip获取地理位置
  • 原文地址:https://www.cnblogs.com/coxsoft/p/2806939.html
Copyright © 2011-2022 走看看