加入收藏
您当前的位置:首页 > EmpireCMS

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

时间:2010-06-05 10:18:22  来源:  作者:

首先在所需的系统模型中添加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}]
<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

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

特别说明:本站部分资源来源网络,仅供学习与参考,请勿用于商业用途。转载请注明来自:www.phpld.cn PHPL中文网
上一篇:帝国调用终极目录下的某一条单独信息
下一篇:上网IP随时变动的进来,解决6.0版后台登录验证问题
推荐资讯
DedeCMS将data目录迁移到web根目录之外
DedeCMS将data目录迁移
相关信息
头条信息
热门信息