15621857753

PHPCMSV9解决VIP会员组到期后不降级的教程攻略

来源:齐鲁建站 栏目:开发教程 阅读: 日期:2020-07-02

站长朋友们都知道,PHPCMS V9升级会员后会给予VIP 标识,VIP 到期时间也就是升级会员组的购买时间结束后,VIP还是VIP,依然可以下载或购买服务,这个对于靠会员组来盈利的朋友是个灾难的事情!那么PHPCMSV9怎么解决VIP会员组到期后不降级呢?

站长朋友们都知道,PHPCMS V9升级会员后会给予VIP 标识,VIP 到期时间也就是升级会员组的购买时间结束后,VIP还是VIP,依然可以下载或购买服务,这个对于靠会员组来盈利的朋友是个灾难的事情!那么PHPCMSV9怎么解决VIP会员组到期后不降级呢?今天齐鲁建站小编就来教大家!

一、修复第一个文件:会员下的index.php

打开 phpcms/modules/member/index.php 文件

713行左右找到:

if($r['overduedate'] < SYS_TIME) { 
    $updatearr['vip'] = 0; 

改成:

if($r['overduedate'] < SYS_TIME) { 
    $updatearr = array('vip'=>'0', 'groupid'=>'8'); 

即可修复此 BUG,当购买时长到期后,会改变 VIP 状态为0,也就是否,会把用户组降级到指定的用户组 ID,我这里写的是8,注册会员,至于你想改成什么,自己斟酌

但是又遇到问题了,会发现自助升级的用户只是降了VIP到期时间但是不会降级,这里的原因是VIP过期日期为1970导致的。

二、修复第二个文件:member.php

打开 phpcms/modules/member/member.php

找到

$form_overdudate = form::date('info[overduedate]', date('Y-m-d H:i:s',$memberinfo['overduedate']), 1); 

改成

$form_overdudate = form::date('info[overduedate]', date('Y-m-d H:i:s',($memberinfo['overduedate'] ? $memberinfo['overduedate'] : mktime())), 1); 

ctrl+F5强刷网站,这样系统就默认当前时间了,会员到期也就自动降级了!

展开