HighSpeaker/.history/app/controller/login_20221223195750.php

55 lines
1.6 KiB
PHP
Raw Normal View History

2022-12-24 19:40:40 +05:30
<?php
namespace app\controller;
use support\Request;
use Webman\Captcha\CaptchaBuilder;
use support\View;
class login
{
public function index(Request $request)
{
$msg=$request->get('msg', '');
$to=$request->get('to', '/');
View::assign('msg', $msg);
View::assign('to', $to);
return view('login');
}
public function check(Request $request)
{
$captcha = $request->post('code','0');
// 对比session中的captcha值
if (strtolower($captcha) !== $request->session()->get('captcha')) {
return redirect('/login?msg=验证码错误');
}
$name = $request->post('name','0');
$password = $request->post('password','0');
if($name==getenv('admin') && $password==getenv('password')){
$session = $request->session();
$session->set('userinfo', 'admin');
$to = $request->post('to','/admin');
return redirect("$to");
}else{
return redirect('/login?msg=账号密码错误');
}
return response('错误');
}
public function captcha(Request $request)
{
// 初始化验证码类
$builder = new CaptchaBuilder;
// 生成验证码
$builder->build();
// 将验证码的值存储到session中
$request->session()->set('captcha', strtolower($builder->getPhrase()));
// 获得验证码图片二进制数据
$img_content = $builder->get();
// 输出验证码二进制数据
return response($img_content, 200, ['Content-Type' => 'image/jpeg']);
}
}