当前位置:首页 > CMS教程 > DeDecms > 列表

DEDECMS会员签到加积分如何实现

发布:smiling 来源: PHP粉丝网  添加日期:2014-11-02 20:38:30 浏览: 评论:0 

1、修改模板页面member\templets\index.htm头部加入js:

  1. <script language="javascript" type="text/javascript"
  2.       function ajaxSign() { 
  3.       $.ajax({ 
  4.  type:"get"
  5.  url:"http://www.phpfensi.com/member/ajax_sign.php"
  6.  data:{uid:<?php echo $cfg_ml->M_ID;?>,time:new Date()}, 
  7.  success:function(data){ 
  8.      alert(data); 
  9.   if (data != '今日已签到,请勿重复提交!' || data != 'ERROR') { 
  10.     location.reload(true); 
  11.         }, 
  12.       }); 
  13.     }                                 
  14. </script> 

2、然后在需要显示的部分加入<a href="javascript:ajaxSign();" target="_self">签到</a><span>( 每天签到,赠送金币!)</span>

3、上传ajax_sign.php到member目录,可以自己建立个文本文件然后复制以下内容到文本文件里,最后该文件改名为ajax_sign.php,注意后缀名.

ajax_sign.php文件的内容为:

  1. <?php 
  2. require_once(dirname(__FILE__).'/config.php'); 
  3. $uid = isset($uid) ? (int)$uid : ''
  4. AjaxHead();if(!emptyempty($uid)) { 
  5. $sql = "SELECT * FROM #@__member WHERE `mid`='{$uid}' LIMIT 1"
  6.     $dsql->Execute('me',$sql); 
  7.     $arr = $dsql->GetArray('me'); 
  8. if ($arr) { 
  9.     $signdate = date('Y-m-d'$arr['signtime']); 
  10. if ($signdate < date('Y-m-d')) { 
  11. $dsql->ExecuteNoneQuery("UPDATE `#@__member` SET `scores`=`scores`+" . $GLOBALS['cfg_score_sign'] . ", `signtime`='" . time() . "' WHERE `mid`='$uid' LIMIT 1"); 
  12. echo '签到成功!积分增加' . $GLOBALS['cfg_score_sign'] . '个';  } else { echo '今日已签到,请勿重复提交!';  } 
  13. else {  //phpfensi.com 
  14. echo 'ERROR'
  15. }else
  16. echo '您还没有登录请登录!'
  17. ?> 

4、在dede_member中增加一个字段段名为:signtime 类型为INT 长度值为:12

5、 在系统基本设置 增加新的 变量:

变量名称填:cfg_score_sign

变量类型:文本

参数说明:会员签到所得积分

所属组:互动设置

设置完成后点击 保存变量即可

Tags: DEDECMS积分会员 DEDECMS签到积分

分享到: