千家信息网

帝国CMS如何实现扣除会员积分置顶与到期后取消置顶

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,这篇文章主要介绍帝国CMS如何实现扣除会员积分置顶与到期后取消置顶,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体实现方法如下:1、在所需的系统模型中添加int字段 top
千家信息网最后更新 2024年09月22日帝国CMS如何实现扣除会员积分置顶与到期后取消置顶

这篇文章主要介绍帝国CMS如何实现扣除会员积分置顶与到期后取消置顶,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

具体实现方法如下:

1、在所需的系统模型中添加int字段 top 单选按钮0,1(0为否,1为是)

2、修改e/class/qinfofun.php 在文件中找到
esetcookie("lastaddinfotime",time(),time()+3600*24);
一直到 //-------------

全部替换为:

代码如下:

//置顶扣分$t=$empire->fetch2("select top from {$dbtbpre}ecms_".$tbname." where userid='$muserid' and id='$id' and classid='$classid' limit 1");if($t[top]){$w=$empire->fetch2("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);}}

推荐学习《帝国cms教程》

3、修改e/class/qinfofun.php 在文件中找到
代码如下:

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->fetch2("select top from {$dbtbpre}ecms_".$tbname." where userid='$muserid' and id='$id' and classid='$classid' limit 1");if($t[top]){$w=$empire->fetch2("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中添加(gb2312版)

又添加这个字段主要是避免与老大的那个firsttitle起冲突,避免以后升级带来的麻烦

假如会员积分不足提示积分不足但信息仍让可以提交只是不能置顶。

在列表模板中调用方法:

代码如下:

[e:loop={"select * from phome_ecms_house where top=1 and checked=1 and classid='$GLOBALS[navclassid]' limit 3",3,24,0}][置顶][/e:loop]

01.23日更新功能添加到期时间字段date到期之后置顶功能无效.

上面的列表模板sql中添加

代码如下:

and (unix_timestamp(youxiaoqi)-UNIX_TIMESTAMP(NOW()))>0

以上是帝国CMS如何实现扣除会员积分置顶与到期后取消置顶的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

0