帝国模板之家为广大用户提供专业、一站式建站服务。

帝国cms教程

帝国cms教程栏目,提供精品建站,仿站,二次开发,安装,标签使用等图文教程,帮助建设和管理好你的帝国cms站点。

当前位置:首页 > 教程 > 帝国cms教程 > 正文

帝国cms信息置顶扣积分

帝国模板之家 2020-08-24 帝国cms教程 评论

帝国cms置顶扣积分

有许多站长需要实现这样的功能,帝国cms网站信息需要设置置顶后扣除会员积分,到期后取消置顶。下面帝国模板之家小编给大家分享一个方法来实现这个功能。具体步骤如下:

首先在所需的系统模型中添加int字段 top,单选按钮0,1(0为否,1为是)。主要修改e/class/qinfofun.php两处 一处为增加,一处为编辑。

在文件中找到esetcookie("lastaddinfotime",time(),time()+3600*24);下面到//-------------修改

全部替换为:

    //置顶扣分
    $t=$empire->fetch1("select top from {$dbtbpre}ecms_".$tbname." where userid='$muserid' and id='$id' and classid='$classid' limit 1");
    if($t[top])
    {
           $w=$empire->fetch1("select userfen from {$dbtbpre}enewsmember where userid='$muserid'");
         if($w[userfen]>=10)
          {
               $sql3=$empire->query("update {$dbtbpre}enewsmember set userfen=userfen-10 where userid='$muserid'");
              printerror("AddQinfoSuccess",$reurl,1);
          }
         else
           {
            $sql4=$empire->query("update {$dbtbpre}ecms_".$tbname." set top=0 where userid='$muserid' and id='$id' and classid='$classid' limit 1");
               printerror("jifenbugou",$reurl,1);
          }
    }                
       else
    {
        printerror("AddQinfoSuccess",$reurl,1);
    }
}
else
{
    printerror("DbError","history.go(-1)",1);
}
}

找到

if($sql)
{
    $reurl=DoingReturnUrl("ListInfo.php?mid=$mid",$add['ecmsfrom']);
     if($add['editgotoinfourl']&&$infor['checked'])//返回内容页
    {
        if($cr['showdt']==1)
           {
             $reurl=$public_r[newsurl]."e/action/ShowInfo/?classid=$classid&id=$id";
         }
         elseif($cr['showdt']==2)
          {
              $reurl=$public_r[newsurl]."e/action/ShowInfo.php?classid=$classid&id=$id";
           }
         else
           {
              $reurl=$titleurl;
        }
    }

在其下至//---------------删除之间替换为:

//置顶扣分
    $t=$empire->fetch1("select top from {$dbtbpre}ecms_".$tbname." where userid='$muserid' and id='$id' and classid='$classid' limit 1");
    if($t[top])
    {
        $w=$empire->fetch1("select userfen from {$dbtbpre}enewsmember where userid='$muserid'");
        if($w[userfen]>=10)
         {
             $sql3=$empire->query("update {$dbtbpre}enewsmember set userfen=userfen-10 where userid='$muserid'");
              printerror("EditQinfoSuccess",$reurl,1);
           }
        else
           {
               $sql4=$empire->query("update {$dbtbpre}ecms_".$tbname." set top=0 where userid='$muserid' and id='$id' and classid='$classid' limit 1");
               printerror("jifenbugou",$reurl,1);
        }
      }
     else{printerror("EditQinfoSuccess",$reurl,1);}        
    }
    else
    {printerror("DbError","history.go(-1)",1);}
}

注意上面部分的10为扣除的积分自行设置,还有jifenbuzhu自己可以该为自己需要的提示在e/data/language/gb/pub/q_message.php中添加。

又添加这个字段主要是避免与老大的那个firsttitle起冲突,避免以后升级带来的麻烦,假如会员积分不足提示积分不足但信息仍让可以提交只是不能置顶。

在列表模板中调用方法:

[e:loop={"select * from phome_ecms_house where top=1 and checked=1 and classid='$GLOBALS[navclassid]'  limit 3",3,24,0}]
<tr onmouseout="this.style.backgroundColor='#ffffff'" onmouseover="this.style.backgroundColor='#F1F5FC'">
        <td><?=$bqr[myarea]?></td>
        <td class="tx"><font color="red">[置顶]</font>
<a href="<?=$bqsr[titleurl]?>" title="<?=$bqr[title]?>" target="_blank"><?=$bqr[xiangxidizhi]?></a></td>
        <td><?=$bqr[shi]?>室<?=$bqr[ting]?>厅</td>
        <td><?=$bqr[size]?><span class="m">㎡</span></td>
        <td><?=$bqr[money]?></td>
        <td align="right"><?=date('Y-m-d',$bqr[newstime])?></td>
    </tr>
[/e:loop]

//01.23日更新功能添加到期时间字段date 到期之后置顶功能无效,上面的列表模板sql中添加 and (unix_timestamp(youxiaoqi)-UNIX_TIMESTAMP(NOW()))>0

以上就是帝国cms信息置顶扣积分的方法,仅供参考。更多相关内容请关注帝国模板之家其他文章。

这世上无忧无虑的人,反而相对寿命会长点。

已有 位小伙伴发表了看法

欢迎 发表评论

  • 匿名发表

关于

帝国cms模板

网页插件

帝国模板之家 | www.moyouyouw.cn

本站所有模板/文章除标明原创外,均来自网络转载,版权归原作者所有,如果有侵犯到您的权益,请联系站长删除,谢谢! 寻找帝国cms模板首选帝国模板之家,用心做站,上线至今广受好评,值得信赖!

  • 交流群1:帝国cms交流群1
  • 交流群2:帝国cms交流群2
在线QQ 给我留言