index.php
<? session_start(); // стартуем сессию
$vivod = '<a href="authorization.php">Вернуться к форме</a><br>';
// Если переменная auth из сессии не пуста и равна true, то дадим доступ:
if ($_SESSION['user'])
{
$vivod .= "Здравствуйте ". $_SESSION['user'].'<br>';
$vivod .= ' <a href="logout.php">ВЫЙТИ</a><br>';
echo $vivod;
} else {
echo 'Доступ запрещен!';
echo "<html><head><meta http-equiv='Refresh' content='2; URL=authorization.php'></head></html>";
exit;
}
?>
<!DOCTYPE html>
<head>
<html lang="ru">
<meta charset="UTF-8">
<title>test.php</title>
</head>
<body>
Если авторизации нет,то эту строчку вы не увидите.<br>
Таким образом скрывают информацию от незарегистрированных. <br>
</body>
</html>
authorization.php
<?
session_start(); //стартуем сессию
$home = $_SERVER['DOCUMENT_ROOT']."/";
$dir_Spisok = $home.'./users.dat';//записываем пользователей или удаляем
$users = file_get_contents($dir_Spisok);//
$lines = explode("\n", $users);
$login = strip_tags (trim($_POST['login'] ));
$password = md5(strip_tags (trim($_POST['password'])));
//echo $login .'<br>'.$password;
if ($_POST['submit'])
{
if ((@strpos($users, $login) == TRUE) or (@strpos($users, $password) == TRUE) )
{
for ($i = 0; $i < count($lines); $i++)
{
$parts = explode("::",$lines[$i]);
if((trim($parts [0]) == $login) and (trim($parts [1]) == $password))
{
//Запишем в сессию информацию о том, что мы авторизовались:
$_SESSION['user'] = $login; //http://dwweb.ru/page/php/028_chto_takoe_sessii_v_php.html
if (!isset($_COOKIE['user']))
{
setcookie("user", $login ,time()+31556926); //http://dwweb.ru/page/php/file/001_php_ustanovit_cookies_chto_eto_primer_ispolzovaniya.html
}
}
}
}
else
{
$vivod = 'такой логин не зарегисрирован<br>';
}
if(!$vivod)
{
if ($_SESSION['user'])
{
$vivod = 'Вы авторизованы!<br>Здравствуйте '.$login. '<br> <a href="logout.html">ВЫЙТИ</a> <br> ';
}
else
{
$vivod = 'Либо логин, либо пароль не верны.';
}
}
}
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<? $title = "Пример работы скрипта: Авторизация на php, на файлах"; ?>
<title><? echo $title; ?></title>
<meta name="description" Content="<? echo $title; ?>"/>
<meta name="keywords" content="<? echo $title; ?>" />
<style>.form { margin: auto; width: 300px; border: 1px solid #e6e6e6; padding: 29px; background: #fbfbfb;}input[type="text"], input[type="password"] { width: 250px; margin: auto; display: -webkit-box; padding: 11px; margin-bottom: 23px; border: 1px solid #d2d4d6;}input[type="submit"] { margin-left: 12px; width: 277px; padding: 10px;}.form span { width: 92px; display: block; margin: auto; margin-bottom: 15px;} red{color: red;}</style>
</head>
<body>
<? if(!$_SESSION['user']){?>
<h2 title="<? echo $title; ?>"><? echo $title; ?></h2>
login = <red>admin</red> password = <red>dwweb</red> <br>
<red><? echo $vivod ; ?> </red><br>
<div class="form">
<form action='' method='POST'>
<span>Авторизация</span>
<input name='login' type='text' placeholder="login" required>
<input name='password' type='password' placeholder="password" required>
<input type='submit' value='Отправить' name='submit'>
</form>
</div>
<? } else {
echo '<red>Вы уже авторизованы!</red><br>';
}
?>
<br><br>
<a href="test.php">ТЕСТ - проверки авторизации</a><br>
База данных в файле <a href="users.dat" target="_blank">users.dat</a><br>
Страница выхода <a href="logout.php" target="_blank">logout.php</a><br>
</div>
</body>
</html>