/
maxavangard
/
KTC
Обзор
Документация
Войти
/
maxavangard
/
KTC
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
controllers/AuthController.php
106 строк
2 KB
Avangartd
first_commit
28 июн 2026, 18:48
28 июн 2026, 18:48
f36fb03
Код
Авторство
О чём код?
<?php namespace app\controllers; use Yii; use yii\web\Controller; use app\models\User; class AuthController extends Controller { public function actionLogin() { $error = ''; if (Yii::$app->request->isPost) { $user = User::findByUsername( $_POST['username'] ); if (!$user) { $error = 'Пользователь не найден'; } else { if (!$user->validatePassword( $_POST['password'] )) { $error = 'Неверный пароль'; } else { Yii::$app->user->login($user); return $this->redirect([ 'site/index' ]); } } } return $this->render('login', [ 'error' => $error ]); } public function actionRegister() { $error = ''; if (Yii::$app->request->isPost) { $username = $_POST['username']; $password = $_POST['password']; $password2 = $_POST['password2']; $findUser = User::findByUsername( $username ); if ($findUser) { $error = 'Логин уже занят'; } else if ($password != $password2) { $error = 'Пароли не совпадают'; } else { $user = new User(); $user->username = $username; $user->password = Yii::$app->security ->generatePasswordHash( $password ); $user->save(); return $this->redirect([ 'auth/login' ]); } } return $this->render('register', [ 'error' => $error ]); } public function actionLogout() { Yii::$app->user->logout(); return $this->redirect([ 'site/index' ]); } }