php实现签到功能
来源:互联网 发布:电信网络诈骗宣传标语 编辑:程序博客网 时间:2024/05/01 22:23
控制器的写
$date=yii::$app->request->get('date');
if(isset($date)){
$user_id=1;
$model=new SignIn();
if(!$model->show($user_id,$date)){
$dated=$date-3600*24;
$yesterday=$model->show($user_id,$dated);
$sign_num=!empty($yesterday)?$yesterday[0]['sign_num']:0;
if($sign_num+1==5){
$data=['user_id'=>$user_id,'sign_date'=>intval($date),'sign'=>1];
}else{
$data=['user_id'=>$user_id,'sign_date'=>intval($date),'sign'=>1,'sign_num'=>$sign_num+1];
}
if($model->add($data)){
$model->sign_total($data['user_id']);
return "<script>alert('签到成功');location.href='".URl::to(['sign-in/sign'])."';</script>";
}
}else{
return "<script>alert('今天已签到');location.href='".URl::to(['sign-in/sign'])."'</script>";
}
// $data=['user_id'=>1,'sign_date'=>$date];
//
// $model->sign($data);
}else{
return $this->render('sign');
}
model层的一些写法
class SignIn extends \yii\db\ActiveRecord
{
public function sign_total($userId){
$sql='update user set sign_total=sign_total+10 WHERE id='.$userId;
return Yii::$app->db->createCommand($sql)->query();
}
public function add($data){
$value='';
foreach($data as $val){
$value.=",'$val'";
}
$k='';
foreach($data as $key=>$val){
$k.=",$key";
}
$value=substr($value,1);
$k=substr($k,1);
return Yii::$app->db->createCommand("insert into sign_in($k) VALUES($value)")->query();
}
public function show($id,$dated){
return $rows = (new \yii\db\Query())->from('sign_in')
->where(['user_id' => $id])
->andWhere(['sign_date'=>$dated])
->all();
}
- php实现签到功能
- php实现签到功能
- php实现签到功能
- php实现签到功能
- PHP简单签到功能实现
- Android签到功能的实现
- js实现每日签到功能
- 自定义Calendar实现签到功能
- 自定义日历 实现签到功能
- 微信小程序签到功能实现
- 基于Redis bitmap实现签到功能
- jquery+spring实现每日签到功能
- app每月签到功能简单实现
- 基于jquery实现日历签到功能
- Android 自定义日历-实现签到订约功能
- 签到功能
- 签到功能
- PHP+MYSQL+AJAX实现每日签到
- python 常用命令
- 简述OSI七层物理模型(简单易懂)
- 详解全局免流原理(转载)
- python 类和实例
- 文章标题
- php实现签到功能
- qt 屏蔽ESC
- Android路由框架Router分析
- 推荐一本书:《Visual C++程序开发范例宝典》——你可以找到你想要的实例
- Bell-Ford 算法的改进--SPFA算法
- PS的一些小细节(笔记)
- 蓝桥杯 算法提高 8-1因式分解
- 艺术编程-技术之声第五期
- 常用算法