

ну а что ещё придумать?ADRE писал(а):эх думал еще какие интересные вещи есть, не так нет
пайду валенки корче покупать зае***** мерзнуть... то тепло то холод...
а ты знаешь для чего нужны куки и зачем была придумана сессия?ADRE писал(а):Интересует кто как делает, посмотрел в классической книжке: лаура томпсон и люк веллинг. там все через сессии, на самом деле интересует как сделать с куки
ну да, кука самое место для хранения паролейlissyara писал(а):а запоминать как?
про пароль тут не было ни слова.lissyara писал(а):писать юзеру некую строку, её же хранить на сервере.
Лис, ты изобрёл сессию, поздравляюlissyara писал(а):собсно - строку я предлагал случайную делать - мегахакеру её взять просто неоткуда, время жизни куки тоже предложил отдельно хранить на сервере.
собсно - граблей не вижу...
IP, к сожалению пхп не проверяет (эту проверку придется вручную делать).zg писал(а):Насколько я помню, для сессии так же важен ip
phpBB2 написан очень неплохо, pma, можно глянуть иногда (но не увлекаться)ADRE писал(а):благо Гнутых систем не мало
дык согласенzg писал(а):phpBB2 написан очень неплохо, pma, можно глянуть иногда (но не увлекаться)ADRE писал(а):благо Гнутых систем не мало
но всё равно, пока не попробуешь сам написать, будет лишь иллюзия понимания
Код: Выделить всё
<?
// auth.php
// Если сессия не запущена, то запускаем её
if ( !session_id() ) session_start();
// Пользователь уже авторизован
if ( isset($_SESSION['AUTH_OK']) && $_SESSION['AUTH_OK'] ) return true;
// Пользователь пытается авторизоваться
if ( isset($_POST['login']) )
{
if ( checkLogin( $_POST['login'], $_POST['passw'] ) )
return true;
else
echo '<div style="color: red"><b>Неверный логин или пароль</b></div>';
}
// Вывод формы логирования
loginForm();
exit();
/**
* Вывод формы логирования
*
* @return void
*/
function loginForm()
{
?>
<form method="POST">
<label for="login">Логин</label> <input id="login" name="login" /><br />
<label for="passw">Пароль</label> <input type="password" id="passw" name="passw" /><br />
<input type="submit" value="Login" />
</form>
<?
}
/**
* Проверка логина и пароля
*
* @param string $login
* @param string $passw
* @return bool
*/
function checkLogin( $login, $passw )
{
if ( 'root' === $login && 'root' === $passw )
{
$_SESSION['AUTH_OK'] = true;
return true;
}
return false;
}
?>
Код: Выделить всё
<?
// Авторизация
include('auth.php');
?>
Закрытая часть админки