扣除会员积分实现信息置顶功能(到期后取消置顶)

帝国教程 强烈建议 2024-03-04 08:27 99 0

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

  主要修改e/class/qinfofun.php两处 一处为增加,一处为编辑

  1。

  在文件中找到

  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);}

  }

  2.找到

  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中添加(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

  模板大家自己修改,如有什么问题大家跟帖我会尽量解答

  上传以下图片:

本站资源均来自互联网或会员发布,如果不小心侵犯了您的权益请与我们联系。我们将立即删除!谢谢!