Глюки с авторизацией.

  • Автор темы Автор темы Texel
  • Дата начала Дата начала

Texel

Новичок
Глюки с авторизацией.

Люди подскажите как сделать нормальную авторизацию. Сделал скриптик на пхп и подключил ко всем файлам

типа такого

PHP:
<?
session_start();

include_once("Functions.php");

$kickout = "<html>
<body>
<script language='JavaScript'>
    top.location = index.php';
</script>
</body>
</html>";
  
....

if (!$global_id)
{
       echo $kickout;   //здесь в IE выкидывает
       exit;
}

//******** проверяем   
$result = mysql_query("SELECT * FROM online WHERE id_user=$global_id");


if(!mysql_num_rows($result))
{
       echo $kickout;
        exit;
}

    
    disconnect();
?>

Этот код не работает под IE , но работает под Оперу. Спрашивал у хостера - он не знает в чём дело =(.

Подскажите что делать.
 
Я так понимаю, $global_id - ID юзера из сессии, а пишешь ты под registered_globals=On. (Поправьте меня, если я ошибаюсь). В таком случае твоя авторизация в том виде, каком ты ее привел, гроша ломаного не стоит. надо лишь написать в браузере .../script.php?global_id=1(2, 3, 4....... и так далее, пока не наткнешься на существующий в базе ID) - и все. Проходишь на ура в "запретную зону"
 
Нет фишка в том была я перенаправлял пользователя командой header("Location: tra-ta-ta");
при этом пхп как оказывается не запоминает ид сессии, по этому я сделал через

print"<script language='JavaScript'>
top.location = 'tra-ta-ta';
</script>";

И вот только тогда всё заработало.

Но это всё для ИЕ сделано, Опера нормально всё обрабатывала.
 
а при чем здесь flash?

-~{}~ 22.10.04 11:03:

самое смешное, что этот код ни от чего не защищает ВООБЩЕ
любой придурок будет иметь на этом сайте админские привелегии.
Но, похоже, уровень собеседника не позволил ему понять сообщение crocodile2u
 
Ну этот код приведён не полностью... там есть ещё ограничения =)... но концепцию поменяю...

такая идея: пользователь авторизуется получает уникальный ИД(случайное число, допустим), Этот ИД и имя сесси и ид пользователя заносится в БД. и при каждом обращении к странице этот ИД проверяется на принадлежность данному пользователю и данной сесси

Ну как идея правильная?
 
Тогда как реализовать? И почему приведёный выше алгоритм не подходит?
 
Сверху