Временно сделал так:
В форме авторизации проверяет установлены ли куки ? Если да то перебрасывает на рабочую страницу. Если нет дает ввести логин/пароль
<?php
if (!is_null($_COOKIE['id'])){
echo "Вы авторизованы сейчас вас перебросит на нужную страницу";?>
<script language = 'javascript'>
var delay = 5000;
setTimeout("document.location.href='http://test/adminka/t'", delay);
</script>
далее обычная html форма
<?php }
После нажатия кнопки "войти" запускается скрипт, который проверяет MD5(логин+пароль+мусор) на наличие в базе. Если все хорошо клиенту в куки шлю ID и в базу записывается его ID и время до которого он действителен.
if(isset($_POST['name'])){
include 't/connect.php';
$log=$_POST['name'];
$q=mysql_query("SELECT pas FROM auth WHERE login='$log'") or die ("нетуда");
$f=mysql_fetch_row($q);
if (MD5($_POST['name'].$_POST['passwod']."xb[ef[ef")==$f[0]){
$tmp=MD5(rand(1,10).rand(10,25).date()."ytgjyznrf!");
$da=time()+3600;
$lg=$_POST['name'];
if (mysql_query("UPDATE auth SET id='$tmp', limitD='$da' WHERE login='$lg'")){
if (SetCookie("id","$tmp",time()+3600))
header("Location: http://test/adminka/t");
else
exit("невозможно установить кукиесы");
}
else
exit ("нетуда брынь $mysql_error()");
}
else{
echo "неправильно введен пароль";
header("Location: http://test/adminka");
}
}
else
exit ("за вами выехала милиция");
На запароленых страницах проверяется ID пользователя и время до которого он действителен, если он не действителен удаляем.
if(isset($_COOKIE['id'])){
include 'connect.php';
$q=mysql_query("SELECT id, limitD FROM auth");
$f=mysql_fetch_row($q);
if ($_COOKIE['vmovsid'] == $f[0] && time() < $f[1]){
$a=rand(1,2); // ниче не делаем
}
else {
setcookie('id','',time()-3600);
exit ("попробуйте авторизоваться заново");
}
}
else
exit("вы не прошли <a href='/adminka'>авторизацию</a> на сайте");
Единственная проблема это удаление кукиесов. Подскажите пожалуйста как это сделать ? Куки устанавливаются в локации /adminka а удалить пытаюсь из /adminka/t