$new_user->login = $log_user; $new_user->password = $pass; $new_user->fio = $fio_user; $new_user->user_age = $_POST['age']; $new_user->about = $about_user; $new_user->session = date('Y-m-d h:i:s', time() + 3600); //Сессия 1 час $answer = $db->insertPrepare('user_info', $new_user); if ($answer == true) { //Узнаем id нового пользователя $user = $db->queryFetchAll($sql . ' WHERE login = "******"', '\\lib\\User'); $check->saveCookie($log_user, $user[0]->user_id, $new_user->session); $log->recordLog('Регистрация пользователя ' . $user[0]->user_id); echo "<p>Молодец, ты зарегистрировался как " . $log_user . "</br><a href='index.php'>Перейти к статьям</a></br>" . "<a href='articles_editor.php'>Перейти к редактору статей</a>"; } else { $log->recordErr('Не получилось записать нового пользователя в базу данных'); echo 'Вы не смогли зарегистрироваться. <a href = convert_link.php?link=registration&dir=app>Попробуйте еще раз</a>.'; } } else { $log->recordErr('Попытка зарегистрироваться под существующим логином'); echo $show_form; echo '<p>Введенный логин уже существует. Введите другой логин.</p>'; } } else { $log->recordErr('При регистрации ввод не совпадающего пароля с основным'); echo $show_form; echo '<p>Введенные пароли не совпадают.</p>'; } } else { echo $show_form; }
<?php require_once '../lib/User.php'; require_once '../lib/Check.php'; require_once '../app/db_connect.php'; require_once '../lib/Logger.php'; $log = new \lib\Logger($dir_blog . 'log' . DIRECTORY_SEPARATOR, NAME_LOG); $sql = 'SELECT * FROM user_info WHERE user_id = ' . $_COOKIE['id_user']; $user = $db->queryFetchAll($sql, '\\lib\\User'); $user[0]->session = null; $answer = $db->updateRow('user_info', $user[0]); if ($answer == true) { $log->recordLog('Произведен выход пользователя ' . $_COOKIE['id_user']); $del_cookie = new \lib\Check(); $del_cookie->delCookie(); } else { $log->recordErr('Не получилось удалить данные входа в базе данных'); include 'header.php'; echo '<div id="content"> ' . 'Не удалось выйти из системы' . '</br>Попробуйте <a href = index.php>еще раз</a>' . '</div>'; include 'footer.php'; }
$log = new \lib\Logger($dir_blog . 'log' . DIRECTORY_SEPARATOR, NAME_LOG); echo '<div id=all_forms>'; if (!isset($_COOKIE['session']) || !$check->isEnter($_COOKIE['session'])) { //При условии, что пользователь не вошел echo '<p>Вы не можете удалить учетную запись, так как не авторизованы</p>'; } else { if (isset($_POST['delete_submit'])) { $user = $db->queryFetchAll('SELECT password FROM user_info WHERE user_id = ' . $_COOKIE['id_user'], '\\lib\\User'); if (md5($_POST['pass'] . 'c4i9m3ag') == $user[0]->password) { $answer = $db->removingFromDB('user_info', 'user_id', $_COOKIE['id_user']); if ($answer == true) { $log->recordLog('Удаление учетной записи ' . $_COOKIE['id_user'] . '. IP пользователя ' . $_SERVER['REMOTE_ADDR']); $check->delCookie(false); $check->printAnswer('Учетная запись успешно удалена', 'index.php'); } else { $log->recordErr('Не получилось удалить учетную запись из базы данных'); $check->printAnswer('Возникли проблемы при удалении учетной записи', 'index.php'); } } else { $log->recordErr('Попытка удаления учетной записи с неправильными данными'); echo '<p>Неправильно введенные данные.</p><p>Проверьте написание пароля.</p>'; } } else { ?> <form method="post"> <p>Для удаления учетной записи, пожалуйста введите пароль</p> <p>* Пароль:<input type="password" name="pass" required placeholder = "******"></p> <p>(*) Обязательное поле</p> <input type=submit name=delete_submit value=Удалить> </form> <?php
//удаляем лишние пробелы слева и справа //Выполняю проверку входных данных для входа пользователя $check_login_pass = false; $user = $db->queryFetchAll('SELECT * FROM user_info', '\\lib\\User'); foreach ($user as $value) { //Проверяется логин и хеш пароля пользователя //данный код пока рассчитан на пользователя аккуратно вводимого данные if ($value->login == $log_user && $value->password == md5($_POST['pass'] . 'c4i9m3ag')) { $check_login_pass = true; $value->session = date('Y-m-d H:i:s', time() + 3600); //Сессия 1 час $answer = $db->updateRow('user_info', $value); if ($answer == true) { $check->saveCookie($value->login, $value->user_id, $value->session); } else { $log->recordErr('Не получилось записать данные входа в базу'); $err = '<p>Не получилось войти.</p>'; } } } if ($check_login_pass == false) { $log->recordErr('Попытка входа с неправильными данными'); $err = '<p>Неправильно введенные данные.</p><p>Проверьте написание логина и пароля.</p>'; } } ?> <h2>Вход на сайт</h2> <form method="post" id="f_registr" enctype="multipart/form-data"> <p>Логин: <input type="text" name="login" required ></p> <p>Пароль: <input type="password" name="pass" required></p> <a href="convert_link.php?link=registration&dir=app">Регистрация</a>
case 'add_article': //Создание новой статьи $submit = key(array_slice($_POST, count($_POST) - 1, 1, true)); switch ($submit) { case 'add_submit': $new_article = new lib\Article(); $new_article->title = $_POST['title_art']; $new_article->create_date = date("Y-m-d h:i:s"); $new_article->author_id = (int) $_COOKIE['id_user']; $new_article->article_text = $_POST['text_art']; $answer = $db->insertPrepare('article', $new_article); if ($answer == true) { $log->recordLog('Добавлена статья ' . $db->lastNumId() . ' пользователем ' . $_COOKIE['id_user']); $check->printAnswer('Статья добавлена', $_SERVER['PHP_SELF']); } else { $log->recordErr('Не получилось записать новую статью в базу данных'); $check->printAnswer('Ваша статья не добавлена. Попробуйте еще раз', $_SERVER['PHP_SELF']); } break; case 'cancel_submit': $check->printAnswer('Вы отменили создание статьи', $_SERVER['PHP_SELF']); break; default: ?> <form method=post id=add_article enctype=multipart/form-data> <p>Заголовок статьи: <input type=text name=title_art placeholder = "Введите название статьи"> </p> <p>Текст статьи:<br> <textarea name=text_art></textarea> </p>