107 lines
3.6 KiB
PHP
107 lines
3.6 KiB
PHP
<?php
|
|
|
|
namespace app\admin\controller;
|
|
use think\facade\View;
|
|
use think\facade\Lang;
|
|
use think\captcha\facade\Captcha;
|
|
/**
|
|
* ============================================================================
|
|
* 联课教育商城系统
|
|
* ============================================================================
|
|
* 版权所有 2022 刻羽互动科技有限公司,并保留所有权利。
|
|
* 网站地址: http://www.o1h.cn
|
|
* ----------------------------------------------------------------------------
|
|
* 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和使用 .
|
|
* 不允许对程序代码以任何形式任何目的的再发布。
|
|
* ============================================================================
|
|
* 控制器
|
|
*/
|
|
class Login extends AdminControl {
|
|
|
|
public function initialize() {
|
|
parent::initialize();
|
|
Lang::load(base_path() . 'admin/lang/'.config('lang.default_lang').'/login.lang.php');
|
|
}
|
|
|
|
public function index() {
|
|
if (session('admin_id')) {
|
|
$this->success('已经登录', 'Index/index');
|
|
}
|
|
if (request()->isPost()) {
|
|
|
|
$admin_name = input('post.admin_name');
|
|
$admin_password = input('post.admin_password');
|
|
$captcha = input('post.captcha');
|
|
|
|
$data = array(
|
|
'admin_name' => $admin_name,
|
|
'admin_password' => $admin_password,
|
|
'captcha' => $captcha,
|
|
);
|
|
|
|
//验证数据 BEGIN
|
|
$login_validate = ds_validate('admin');
|
|
if (!$login_validate->scene('index')->check($data)) {
|
|
ds_json_encode(10001,$login_validate->getError());
|
|
}
|
|
//验证数据 END
|
|
if (!captcha_check(input('post.captcha'))) {
|
|
//验证失败
|
|
ds_json_encode(10001,'验证码错误');
|
|
}
|
|
$condition = array();
|
|
$condition[] = array('admin_name','=',$admin_name);
|
|
$condition[] = array('admin_password','=',md5($admin_password));
|
|
$admin_mod=model('admin');
|
|
$admin_info = $admin_mod->getOneAdmin($condition);
|
|
|
|
if (is_array($admin_info) and !empty($admin_info)) {
|
|
//更新 admin 最新信息
|
|
$update_info = array(
|
|
'admin_login_num' => ($admin_info['admin_login_num'] + 1),
|
|
'admin_login_time' => TIMESTAMP
|
|
);
|
|
$admin_mod->editAdmin($update_info, $admin_info['admin_id']);
|
|
|
|
//设置 session
|
|
session('admin_id', $admin_info['admin_id']);
|
|
session('admin_name', $admin_info['admin_name']);
|
|
session('admin_gid', $admin_info['admin_gid']);
|
|
session('admin_is_super', $admin_info['admin_is_super']);
|
|
ds_json_encode(10000,'登录成功', '','',false);
|
|
} else {
|
|
ds_json_encode(10001,'帐号密码错误');
|
|
}
|
|
} else {
|
|
return View::fetch();
|
|
}
|
|
}
|
|
|
|
public function logout() {
|
|
//设置 session
|
|
session(null);
|
|
ds_json_encode(10000,'退出成功', '','',false);
|
|
}
|
|
|
|
/**
|
|
*产生验证码
|
|
*/
|
|
public function makecode()
|
|
{
|
|
$config = [
|
|
'fontSize' => 20, // // 验证码字体大小
|
|
'length' => 4, // 验证码位数
|
|
'useNoise' => false,//是否添加杂点
|
|
'useCurve' =>true,
|
|
'imageH' => 50,//高度
|
|
'imageW' => 150,
|
|
];
|
|
config($config,'captcha');
|
|
$captcha = Captcha::create();
|
|
return $captcha;
|
|
}
|
|
|
|
}
|
|
|
|
?>
|