<?php namespace Gallery; use Gallery\Views\Page; use Gallery\Database\DB; use Gallery\Utilities\UserState; use Gallery\Utilities\Redirect; $r = new Redirect(); $db = new DB(); if ($db->checkUser($_POST['login'], $_POST['password'])) { $state = new UserState(); $state->setState("authorized", $_POST['login']); $r->with(); } else { $r->with(['msg' => "Неправильное имя пользователя или пароль."]); }
<?php namespace Gallery; use Gallery\Utilities\UserState; use Gallery\Utilities\Redirect; $state = new UserState(); $state->unsetState('authorized'); Redirect::toRoot();
<?php namespace Gallery; use Gallery\Database\DB; use Gallery\Utilities\UserState; use Gallery\Utilities\Parameters; use Gallery\Utilities\Redirect; $r = new Redirect(); $state = new UserState(); if ($state->isState('authorized')) { $login = $state->getState('authorized'); $db = new DB(); $images = $db->getImagesByUser($login); $db->deleteUser($login); $param = new Parameters(); $path = $param->imagesPath . $login; foreach ($images as $img) { unlink($path . DIRECTORY_SEPARATOR . $img . '.jpg'); unlink($path . DIRECTORY_SEPARATOR . $img . $param->previewSuffix . '.jpg'); } rmdir($path); $state->unsetState('authorized'); $r->with(['msg' => "Аккаунт удален."]); } else { Redirect::toRoot(); }
} else { if (preg_match('([^a-zA-Z0-9_])', $pswd)) { $r->with(['msg' => "Пароль может содержать только латинские буквы, цифры\r\n и символ подчеркивания."]); } else { if ($pswd !== $pswd2) { $r->with(['msg' => "Пароли не совпадают."]); } else { // данные корректны, отправляем письмо для проверка email: $tag = md5($email + time()); $state = new UserState(); $state->setState("verifyMailTag", $tag); $state->setState("login", $login); $state->setState("email", $email); $state->setState("password", password_hash($pswd, PASSWORD_DEFAULT)); $subject = 'Подтверждение регистрации'; $param = new Parameters(); $link = $param->hostname . "/verifymail.php?tag={$tag}"; $message = "<html>\r\n <head>\r\n <title>Подтверждение регистрации</title>\r\n </head>\r\n <body>\r\n Для подтверждения регистрации в галерее картинок пройдите по ссылке:<br>\r\n <a href={$link}>{$link}</a>\r\n </body>\r\n </html>\r\n "; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n"; mail($email, $subject, $message, $headers); $r = new Redirect('verifymail'); $r->with(['email' => $email]); } } } } } } } }