您好,欢迎来到菜鸟吧源码网(www.cniao8.com)本站只做精品网站源码!
  • 首 页
  • 会员介绍
  •  

    当前位置:主页 > 站长学堂 > dedecms教程 >
    织梦会员签到功能(非插件)
    时间:2020-03-01 11:43 作者:菜鸟吧 浏览:收藏 挑错 打印

    本文讲解了织梦会员签到增加积分/金币的功能,非插件,安全无毒,需手动修改文件。毕竟来路不明的插件也不敢乱用,废话不多说,开整...

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

    01<script language="javascript">
    02functionajax_sign() {
    03$.ajax({
    04type: "POST",
    05url: "/member/ajax_sign.php",
    06success: function(data) {
    07alert(data);
    08}
    09});
    10}
    11</script>

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

    1每天<span onclick="ajax_sign();"style="cursor:pointer;">[签到]</span>,赠送积分!

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

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

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

    织梦会员签到功能(非插件)


    四、在会员(member)目录新建一个php文件,命名为ajax_sign.php,文件内容如下(注意:把代码中的【分隔符】替换为#@

    01<?php
    02if( $_SERVER['HTTP_REFERER'] == "")//判断规则,禁止直接运行此php文件
    03{
    04header("HTTP/1.1 404 Not Found");
    05header("Status: 404 Not Found");
    06exit;
    07};
    08
    09require_once dirname(__FILE__) . '/config.php';
    10$uid = $cfg_ml->M_ID;//获取当前登录会员的ID
    11$time= time();//获取当前的时间戳
    12$uid = isset($uid) ? (int) $uid : '';
    13//$cfg_sign_time = "10";//如果忽略了本文的第三个步骤,可以用这行代码直接指定签到+10积分
    14AjaxHead();
    15if(!empty($uid)) {
    16$sql = "SELECT * FROM 【分隔符】__member WHERE `mid`='{$uid}' LIMIT 1";
    17$dsql->Execute('me', $sql);
    18$arr = $dsql->GetArray('me');
    19if($arr) {
    20$signdate = date('Y-m-d', $arr['signtime']);
    21if($signdate < date('Y-m-d')) {
    22$dsql->ExecuteNoneQuery("UPDATE `【分隔符】__member` SET `scores`=`scores`+ $cfg_sign_time , `signtime`='". time() . "' WHERE `mid`='{$uid}' LIMIT 1");
    23echo'签到成功!增加 '.$cfg_sign_time.' 积分';
    24} else{
    25echo'今天已经签到,休息一下,明天再来吧!';
    26}
    27} else{
    28echo'错误!';
    29}
    30}

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

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

    保存即可。

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

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

    1alter table dede_member add signtime int(10)

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

    执行成功后如下

    织梦会员签到功能(非插件)


  • 本文标题:织梦会员签到功能(非插件)
  • 本文地址:https://www.cniao8.com/11149.html

    上一篇:织梦dedecms模板中显示最近浏览文章列表

    下一篇:Dedecms模块开发流程(二)

  • 郑重声明:
    本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
    我们不承担任何技术及版权问题,且不对任何资源负法律责任。
    如无法下载,联系站长索要。
    如有侵犯您的版权,请给我们来信:admin@cniao8.com,我们尽快处理。

    织梦系统解决后台“DEDECMS安全提示”的方法织梦系统解决后台“DEDECMS安全提示”
    织梦(DEDECMS)系统GBK和UTF8版本的区分(选择方法)织梦(DEDECMS)系统GBK和UTF8版本的区
    DEDECMS自动锚文本设置方法、教程、详解DEDECMS自动锚文本设置方法、教程、详