本文实例讲述了DEDECMS会员签到加积分的实现方法。分享给大家供大家参考。具体实现方法如下:
1、修改模板页面member\templets\index.htm头部加入js:
代码如下:
<script language="javascript" type="text/javascript"> function ajaxSign() { $.ajax({ type:"get", url:"http://www.123123.com/member/ajax_sign.php", data:{uid:<?php echo $cfg_ml->M_ID;?>,time:new Date()}, success:function(data){ alert(data); if (data != '今日已签到,请勿重复提交!' || data != 'ERROR') { location.reload(true); } }, }); } </script> |
2、然后在需要显示的部分加入:
代码如下:
<a href="javascript:ajaxSign();" target="_self">签到</a><span>( 每天签到,赠送金币!)</span> |
3、上传ajax_sign.php到member目录,可以自己建立个文本文件然后复制以下内容到文本文件里,***后该文件改名为ajax_sign.php,注意后缀名.
ajax_sign.php文件的内容为:
代码如下:
<?php require_once(dirname(__FILE__).'/config.php'); $uid = isset($uid) ? (int)$uid : ''; AjaxHead();if(!emptyempty($uid)) { $sql = "SELECT * FROM dede_member WHERE `mid`='{$uid}' LIMIT 1"; $dsql->Execute('me',$sql); $arr = $dsql->GetArray('me'); if ($arr) { $signdate = date('Y-m-d', $arr['signtime']); if ($signdate < date('Y-m-d')) { $dsql->ExecuteNoneQuery("UPDATE `dede_member` SET `scores`=`scores`+" . $GLOBALS['cfg_score_sign'] . ", `signtime`='" . time() . "' WHERE `mid`='$uid' LIMIT 1"); echo '签到成功!积分增加' . $GLOBALS['cfg_score_sign'] . '个'; } else { echo '今日已签到,请勿重复提交!'; } } else { //phpfensi.com echo 'ERROR'; } }else{ echo '您还没有登录请登录!'; } ?> |
4、在dede_member中增加一个字段段名为:signtime 类型为INT 长度值为:12
5、 在系统基本设置 增加新的 变量:
变量名称填:cfg_score_sign
变量类型:文本
参数说明:会员签到所得积分
所属组:互动设置
设置完成后点击 保存变量即可
希望本文所述对大家的dedecms二次开发有所帮助。
DedeCMS问题解决
请点击在线联系我们【点击咨询解决问题】 如果您有任何织梦问题,我们将免费为您写解决教程!
用心认真写教程不易,请小打赏我们一下,多少是心意,解决问题是重点
【打赏说明】 如果您认为在本站中看的内容质量不错、或阅读后有所收获、或解决您遇到的实际问题,那不妨小金额的赞助一下尚禹科技,让尚禹科技有动力继续写出更多高质量的教程和心得。以帮助更多的人。[查看打赏记录]