PHP實現簽到功能

2022-09-18 02:18:27 字數 1383 閱讀 9631

1、表設計

1)、主表

create table `sign` (

`id` int(11) not null auto_increment comment '主鍵自增',`uid` varchar(50) not null

default '0' comment '使用者id 唯一',`sign_count` int(11) not null

default '0' comment '連續簽到次數',`last_time` int(11) not null

default '0' comment '最近一次簽到時間',`create_time` int(11) not null

default '0' comment '建立時間',primary

key(`id`)

) engine=innodb default charset=utf8 comment='簽到主表';

2)、詳情表

create table `sign_detail` (

`id` int(11) not null auto_increment comment '主鍵自增',

`uid` varchar(50) not null default '0' comment '使用者id 唯一',

`sign_time` int(11) not null

default '0' comment '簽到時間',primary

key(`id`)

) 

engine=innodb default charset=utf8 comment='簽到詳情表';

//

主表$signinfo = db::table('ims_ewei_shop_sign_user')->where('openid',$openid)->order('id','desc')->find();

if($signinfo)

else if( $last_time == $yesterday) //使用者昨天簽到,連續簽到次數加1,否者重置為0

else

$data = [

'sign_count' => $sign_count,

'sum' => $sum +=1,

'last_time' => time(),

'signdate' => time(),

];$sign_id = db::table('ims_ewei_shop_sign_user')->where('openid',$openid)->update($data);

if($sign_id)}}

}}else}}

}else

}

php實現簽到功能

首先我在資料庫裡建了兩張表,乙個是使用者的積分表,乙個是簽到狀態表,分來用來記錄使用者的積分數和先到狀態 在使用者簽到狀態表中我們有乙個字段,last sign time,即上一次簽到時間,每次可以簽到的時候把這個時間與當前時間進行比較 如果相差為0天,則說明今天已簽到 這個簽到是24小時內只能簽到...

PHP實現簽到功能

php實現簽到功能 1 表設計 1 主表 create table sign id int 11 not null auto increment comment 主鍵自增 uid varchar 50 not null default 0 comment 使用者id 唯一 username varc...

PHP 實現簽到功能

如圖所示 實現上圖功能,建立兩張表 簽到獎品表 簽到記錄表 這個表可以再拆分出乙個表 2 功能 計算兩個時間戳之間相差的日時分秒 3 begin time 開始時間戳 4 end time 結束時間戳5 6public function timediff begin time,end time el...