前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >DEDECMS织梦添加会员积分的方法

DEDECMS织梦添加会员积分的方法

原创
作者头像
米米素材网
发布2022-08-06 18:19:18
4.6K0
发布2022-08-06 18:19:18
举报
文章被收录于专栏:站长技术站长技术

不需要插件实现织梦会员增加签到积分/金币方法,因为很多插件我们大家可能都不了解,有些也可以增加了脚本,所以自己手动添加的比较安全,现在把方法分享给大家。

一、在页面中引入ajax代码:

代码语言:javascript
复制
<script language="javascript">
  function ajax_sign() {
    $.ajax({
      type: "POST",
      url: "/member/ajax_sign.php",
      success: function(data) {
        alert(data);
      }
    });
  }
</script>

二、在需要签到按钮的地方增加:

代码语言:javascript
复制
每天<span onclick="ajax_sign();" style="cursor:pointer;">[签到]</span>,赠送积分!

三、新增系统变量,用来设置签到所得积分的数量

  • 变量名称填:cfg_sign_time
  • 变量类型:数字
  • 参数说明:会员签到积分
  • 所属组:会员设置
  • 变量值:10

点击保存变量即可(变量值10表示签到增加10积分),如下图所示:

DEDECMS织梦添加会员积分的方法
DEDECMS织梦添加会员积分的方法

四、在会员(member)目录新建一个php文件,命名为ajax_sign.php,文件内容如下(注意:把代码中的【分隔符】替换为#@,把全角字符‘替换成半角字符'因为我们的编辑器会过滤掉,只能这样了)

代码语言:javascript
复制
<?php
if( $_SERVER['HTTP_REFERER'] == "" )//判断规则,禁止直接运行此php文件
{
header("HTTP/1.1 404 Not Found");
header("Status: 404 Not Found");
exit;
};
  
require_once dirname(__FILE__) . '/config.php';
$uid = $cfg_ml->M_ID;//获取当前登录会员的ID
$time = time();//获取当前的时间戳
$uid = isset($uid) ? (int) $uid : '';
//$cfg_sign_time = "10";//如果忽略了本文的第三个步骤,可以用这行代码直接指定签到+10积分
AjaxHead();
if (!empty($uid)) {
    $sql = "SELECT * FROM 【分隔符】__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 `【分隔符】__member` SET `scores`=`scores`+ $cfg_sign_time , `signtime`='" . time() . "' WHERE `mid`='{$uid}' LIMIT 1");
            echo '签到成功!增加 '.$cfg_sign_time.' 积分';
        } else {
            echo '今天已经签到,休息一下,明天再来吧!';
        }
    } else {
        echo '错误!';
    }
}
?>

五、在数据库中新增一个字段,用来储存会员签到的时间,找到数据库中的dede_member表(dede_是你的表前缀,请自行替换)

  • 新增字段:signtime
  • 类型为:int
  • 长度值:10

保存即可。

如果你的服务器没有安装数据库管理软件,也可以在织梦后台执行sql语句新增字段

系统 >> SQL命令行工具 >> 执行下面的sql语句

代码语言:javascript
复制
alter table dede_member add signtime int(10)

注意:dede_member是官方默认的数据表,如果你的程序更改了数据表前缀,那么就需要把 dede_ 进行替换

执行成功后如下:

DEDECMS织梦添加会员积分的方法
DEDECMS织梦添加会员积分的方法

原文链接:https://www.mimisucai.com/teach/dedecms/202113433.html

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档