|
@@ -1,70 +1,70 @@
|
|
<?php
|
|
<?php
|
|
- date_default_timezone_set("Europe/Kiev");
|
|
|
|
- //правильный логин и пароль
|
|
|
|
- $credentials = array("login" => "admin",
|
|
|
|
- "password" => "qwerty");
|
|
|
|
- session_start();
|
|
|
|
|
|
+ date_default_timezone_set("Europe/Kiev");
|
|
|
|
+ //правильный логин и пароль
|
|
|
|
+ $credentials = array("login" => "admin",
|
|
|
|
+ "password" => "qwerty");
|
|
|
|
+ session_start();
|
|
|
|
|
|
- $newUser = true; //этот флаг указывает, пытается ли пользователь залогиниться (что-то есть в $_POST), или только зашел на страницу.
|
|
|
|
- $passwordRight = false; //этот флаг указывает, правильный ли пароль и логин, если POST не пуст (пользователь пытается залогинится)
|
|
|
|
- $login = ""; //login из $_POST или пустая строка. Используется для заполнения поля ввода, что бы пользователю не приходилось опять вводить имя пользователя
|
|
|
|
|
|
+ $newUser = true; //этот флаг указывает, пытается ли пользователь залогиниться (что-то есть в $_POST), или только зашел на страницу.
|
|
|
|
+ $passwordRight = false; //этот флаг указывает, правильный ли пароль и логин, если POST не пуст (пользователь пытается залогинится)
|
|
|
|
+ $login = ""; //login из $_POST или пустая строка. Используется для заполнения поля ввода, что бы пользователю не приходилось опять вводить имя пользователя
|
|
|
|
|
|
- if (isset($_GET['logout']) and $_GET['logout'] == 'true'):
|
|
|
|
- $_SESSION['logged'] = false; //если пользователь нажал Выйти, то в мы сохраняем это в сессию
|
|
|
|
- endif;
|
|
|
|
|
|
+ if (isset($_GET['logout']) and $_GET['logout'] == 'true'):
|
|
|
|
+ $_SESSION['logged'] = false; //если пользователь нажал Выйти, то в мы сохраняем это в сессию
|
|
|
|
+ endif;
|
|
|
|
|
|
- if (!isset($_SESSION['logged'])):
|
|
|
|
- $_SESSION['logged'] = $passwordRight; //создаем ключ в сессии, если его нет
|
|
|
|
- endif;
|
|
|
|
|
|
+ if (!isset($_SESSION['logged'])):
|
|
|
|
+ $_SESSION['logged'] = $passwordRight; //создаем ключ в сессии, если его нет
|
|
|
|
+ endif;
|
|
|
|
|
|
- if (isset($_POST['login']) && isset($_POST['password'])): //попытка залогиниться
|
|
|
|
- $newUser = false; //значит пользователь не только зашел
|
|
|
|
- $login = $_POST['login']; //сохраняем логин, он, возможно пригодится для поля ввода login
|
|
|
|
- if (($_POST['login'] == $credentials['login']) && ($_POST['password'] == $credentials['password'])):
|
|
|
|
- $passwordRight = true; //если пароль правильный, то записываем это в $passwordRight
|
|
|
|
- $_SESSION['loginTimes'][] = time(); //и сохраняем время логина в сесси
|
|
|
|
- endif;
|
|
|
|
- $_SESSION['logged'] = $passwordRight; //отмечаем в сессии успешность логина
|
|
|
|
- endif;
|
|
|
|
|
|
+ if (isset($_POST['login']) && isset($_POST['password'])): //попытка залогиниться
|
|
|
|
+ $newUser = false; //значит пользователь не только зашел
|
|
|
|
+ $login = $_POST['login']; //сохраняем логин, он, возможно пригодится для поля ввода login
|
|
|
|
+ if (($_POST['login'] == $credentials['login']) && ($_POST['password'] == $credentials['password'])):
|
|
|
|
+ $passwordRight = true; //если пароль правильный, то записываем это в $passwordRight
|
|
|
|
+ $_SESSION['loginTimes'][] = time(); //и сохраняем время логина в сесси
|
|
|
|
+ endif;
|
|
|
|
+ $_SESSION['logged'] = $passwordRight; //отмечаем в сессии успешность логина
|
|
|
|
+ endif;
|
|
?>
|
|
?>
|
|
<html>
|
|
<html>
|
|
- <head>
|
|
|
|
- <title>
|
|
|
|
- php template hell sample
|
|
|
|
- </title>
|
|
|
|
- </head>
|
|
|
|
- <body>
|
|
|
|
- <?php if (!$_SESSION['logged']): ?> <!-- Если пользователь не залогинен -->
|
|
|
|
- <?php if (!$passwordRight && !$newUser): //и пароль неверный, но он пытался ?>
|
|
|
|
- <div style='color: red;'>
|
|
|
|
- Your password are wrong!!!
|
|
|
|
- </div>
|
|
|
|
- <?php endif; ?>
|
|
|
|
- <form method='post' action="">
|
|
|
|
- Login: <input type='text' name='login' value="<?php echo $login; //сюда мы засовываем login из POST или пустую строку ?>"><br/>
|
|
|
|
- Password: <input type='password' name='password'><br/>
|
|
|
|
- <input type='submit' value='Login'>
|
|
|
|
- </form>
|
|
|
|
- <?php else: // Пользователь залогинен успешно ?>
|
|
|
|
- <?php if ($passwordRight): // причем только что ?>
|
|
|
|
- <div style='color: green;'> Welcome </div>
|
|
|
|
- <?php endif; ?>
|
|
|
|
- История логинов:
|
|
|
|
- <table border='1'>
|
|
|
|
- <?php foreach ($_SESSION['loginTimes'] as $time): ?>
|
|
|
|
- <tr><td> <?php echo date("Y-m-d H:i:s", $time); ?> </td></tr>
|
|
|
|
- <?php endforeach; ?>
|
|
|
|
- </table>
|
|
|
|
- <a href='?logout=true'>Выйти</a>
|
|
|
|
- <?php endif; ?>
|
|
|
|
- <pre><?php print_r(array("newUser" => $newUser, "passwordRight" => $passwordRight, "login" => $login));
|
|
|
|
- print_r($_SESSION);
|
|
|
|
- print_r($_POST);
|
|
|
|
- print_r($_GET);
|
|
|
|
- //отладочный вывод для понимания
|
|
|
|
- ?>
|
|
|
|
- </pre>
|
|
|
|
- </body>
|
|
|
|
|
|
+ <head>
|
|
|
|
+ <title>
|
|
|
|
+ php template hell sample
|
|
|
|
+ </title>
|
|
|
|
+ </head>
|
|
|
|
+ <body>
|
|
|
|
+ <?php if (!$_SESSION['logged']): ?> <!-- Если пользователь не залогинен -->
|
|
|
|
+ <?php if (!$passwordRight && !$newUser): //и пароль неверный, но он пытался ?>
|
|
|
|
+ <div style='color: red;'>
|
|
|
|
+ Your password are wrong!!!
|
|
|
|
+ </div>
|
|
|
|
+ <?php endif; ?>
|
|
|
|
+ <form method='post' action="">
|
|
|
|
+ Login: <input type='text' name='login' value="<?php echo $login; //сюда мы засовываем login из POST или пустую строку ?>"><br/>
|
|
|
|
+ Password: <input type='password' name='password'><br/>
|
|
|
|
+ <input type='submit' value='Login'>
|
|
|
|
+ </form>
|
|
|
|
+ <?php else: // Пользователь залогинен успешно ?>
|
|
|
|
+ <?php if ($passwordRight): // причем только что ?>
|
|
|
|
+ <div style='color: green;'> Welcome </div>
|
|
|
|
+ <?php endif; ?>
|
|
|
|
+ История логинов:
|
|
|
|
+ <table border='1'>
|
|
|
|
+ <?php foreach ($_SESSION['loginTimes'] as $time): ?>
|
|
|
|
+ <tr><td> <?php echo date("Y-m-d H:i:s", $time); ?> </td></tr>
|
|
|
|
+ <?php endforeach; ?>
|
|
|
|
+ </table>
|
|
|
|
+ <a href='?logout=true'>Выйти</a>
|
|
|
|
+ <?php endif; ?>
|
|
|
|
+ <pre><?php print_r(array("newUser" => $newUser, "passwordRight" => $passwordRight, "login" => $login));
|
|
|
|
+ print_r($_SESSION);
|
|
|
|
+ print_r($_POST);
|
|
|
|
+ print_r($_GET);
|
|
|
|
+ //отладочный вывод для понимания
|
|
|
|
+ ?>
|
|
|
|
+ </pre>
|
|
|
|
+ </body>
|
|
</html>
|
|
</html>
|
|
|
|
|
|
-
|
|
|
|
|
|
+
|