本文讲解了织梦会员签到增加积分/金币的功能,非插件,安全无毒,需手动修改文件。毕竟来路不明的插件也不敢乱用,废话不多说,开整...
一、在页面中引入ajax代码:
01 | <script language= "javascript" > |
05 |
url: "/member/ajax_sign.php" , |
06 |
success: function (data) { |
|
二、在需要签到按钮的地方增加:
1 | 每天<span onclick= "ajax_sign();" style= "cursor:pointer;" >[签到]</span>,赠送积分! |
|
三、新增系统变量,用来设置签到所得积分的数量
变量名称填:cfg_sign_time
变量类型:数字
参数说明:会员签到积分
所属组:会员设置
变量值:10
点击保存变量即可(变量值10表示签到增加10积分),如下图所示
四、在会员(member)目录新建一个php文件,命名为ajax_sign.php,文件内容如下(注意:把代码中的【分隔符】替换为#@)
02 | if ( $_SERVER[ 'HTTP_REFERER' ] == "" )//判断规则,禁止直接运行此php文件 |
04 | header( "HTTP/1.1 404 Not Found" ); |
05 | header( "Status: 404 Not Found" ); |
09 | require_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积分 |
16 |
$sql = "SELECT * FROM 【分隔符】__member WHERE `mid`='{$uid}' LIMIT 1" ; |
17 |
$dsql->Execute( 'me' , $sql); |
18 |
$arr = $dsql->GetArray( 'me' ); |
20 |
$signdate = date ( 'Y-m-d' , $arr[ 'signtime' ]); |
21 |
if ($signdate < date ( 'Y-m-d' )) { |
22 |
$dsql->ExecuteNoneQuery( "UPDATE `【分隔符】__member` SET `scores`=`scores`+ $cfg_sign_time , `signtime`='" . time () . "' WHERE `mid`='{$uid}' LIMIT 1" ); |
23 |
echo '签到成功!增加 ' .$cfg_sign_time. ' 积分' ; |
25 |
echo '今天已经签到,休息一下,明天再来吧!' ; |
|
五、在数据库中新增一个字段,用来储存会员签到的时间,找到数据库中的dede_member表(dede_是你的表前缀,请自行替换)
新增字段:signtime
类型为:int
长度值:10
保存即可。
如果你的服务器没有安装数据库管理软件,也可以在织梦后台执行sql语句新增字段
系统 >> SQL命令行工具 >> 执行下面的sql语句
1 | alter table dede_member add signtime int(10) |
|
注意:dede_member是官方默认的数据表,如果你的程序更改了数据表前缀,那么就需要把 dede_ 进行替换
执行成功后如下
郑重声明:
本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。
若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
我们不承担任何技术及版权问题,且不对任何资源负法律责任。
如无法下载,联系站长索要。
如有侵犯您的版权,请给我们来信:cainiaovip8@qq.com,我们尽快处理。