Нужна помошь

Discussion in 'PHP' started by Tem, 14 Jun 2006.

  1. Tem

    Tem -

    Joined:
    5 Oct 2005
    Messages:
    557
    Likes Received:
    157
    Reputations:
    179
    Значить так , у меня есть онлайн игра, на её гланой странице есть такой код
    PHP:
    if(session_is_registered('login'))
    {
        print 
    "Ваш персонаж активирован! Пожалуйста авторизируйтесь ещё раз!<BR>Если вы видите это окно не первый раз, значит вы пытаетесь войти в игру несколькими персонажами сразу!";
        
    //print "<script>location.href='index.php';</script>";
        
    session_unset();
    }
    else
    {
        
    session_register('login','pass');
        print 
    "<LINK REL=StyleSheet HREF='style.css' TYPE='text/css'>";
    Регистрацию прохожу нормально, пишет что я зарегён и могу вступить в бой, но при попытки зайти выскакивает ошибка, которой я дал код сверху , можит поможите мне как с этим разобратся ?

    P.S Знаю что session_is_registered возвращает TRUE, если имеется переменная с именем name, зарегистрированная в текущей сессии.
     
  2. DIAgen

    DIAgen Banned Life!

    Joined:
    2 May 2006
    Messages:
    1,055
    Likes Received:
    376
    Reputations:
    460
    Как я понел, создается сессия session_register("login") если пользователь здет активации или не зарегестрирован, глянь выше когда она создается - даные берутся же откуда-то,тогда если session_register("login") отсувует все ОК, или попробуй переписать скрипт с $_SESSION!
     
  3. Tem

    Tem -

    Joined:
    5 Oct 2005
    Messages:
    557
    Likes Received:
    157
    Reputations:
    179
    что ешё скажите ?
     
  4. DIAgen

    DIAgen Banned Life!

    Joined:
    2 May 2006
    Messages:
    1,055
    Likes Received:
    376
    Reputations:
    460
    Ты бы выложил бы сам фаил, а то по одному отрывку сказать ПОЧЕМУ и откуда берется что!
     
  5. Tem

    Tem -

    Joined:
    5 Oct 2005
    Messages:
    557
    Likes Received:
    157
    Reputations:
    179
    Бери как хотел :

    PHP:
    <?
    session_unset();
    ?>
    <?
    session_start();
    ?>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    <meta http-equiv="Content-Language" content="ru">
    <?
    if(session_is_registered('login'))
    {
        print "Ваш персонаж активирован! Пожалуйста авторизируйтесь ещё раз!<BR>Если вы видите это окно не первый раз, значит вы пытаетесь войти в игру несколькими персонажами сразу!";
        //print "<script>location.href='index.php';</script>";
        session_unset();
    }
    else
    {
        session_register('login','pass');
        print "<LINK REL=StyleSheet HREF='style.css' TYPE='text/css'>";
    include "conf.php";
    $data = mysql_connect($base_name, $base_user, $base_pass);
    mysql_select_db($db_name,$data);
        $sql = "SELECT login,blok,blok_reason,password FROM users WHERE login='$login'";
        $result = mysql_query($sql);
        $db = mysql_fetch_array($result);

        if(empty($login))
        {
        print "Вы не ввели логин!<BR>";
        print "<a href='index.php' class=us>Назад</a><BR><BR>";
        print "<hr color=#000000 noshade size=1 width=90% align=right>";
        print "<div align=right>Be Warrior<BR>";
        print "&copy 2006-2010</a></div>";
        }
        else if(empty($pass))
        {
        print "Вы не ввели пароль!<BR>";
        print "<a href='index.php' class=us>Назад</a><BR><BR>";
        print "<hr color=#000000 noshade size=1 width=90% align=right>";
        print "<div align=right>Be Warrior<BR>";
        print "&copy 2006-2010</a></div>";
        }
        else if($db["login"]=="")
        {
        print "Персонаж \"<B>$login</B>\" не неайден в базе данных!<BR>";
        print "<a href='index.php' class=us>Назад</a><BR><BR>";
        print "<hr color=#000000 noshade size=1 width=90% align=right>";
        print "<div align=right>Be Warrior<BR>";
        print "&copy 2006-2010</a></div>";
        }
        else
        {
            $pass_db = $db["password"];
            $p = base64_decode($pass_db);
            if($p!=$pass)
            {
            print "Неверный пароль для персонажа \"<B>$login</b>\"!<BR>";
            print "<a href='index.php' class=us>Назад</a><BR><BR>";
            print "<hr color=#000000 noshade size=1 width=90% align=right>";
        print "<div align=right>Be Warrior<BR>";
        print "&copy 2006-2010</a></div>";
            }
            else if($db["blok"]==1)
            {
            print "Персонаж \"<B>$login</b>\" казнен!<BR>";
            print "Причина казни:<BR>";
            echo $db["blok_reason"];
            print "<BR><a href='index.php' class=us>Назад</a><BR><BR>";
            print "<hr color=#000000 noshade size=1 width=90% align=right>";
        print "<div align=right>Be Warrior<BR>";
        print "&copy 2006-2010</a></div>";
            }
            else{
            print "Добро пожаловать...";
            $zayavka_c_m = 1;
            $zayavka_c_o = 1;
            $battle_ref  = 0;
            session_register('zayavka_c_m','zayavka_c_o','battle_ref');
            print "<script>location.href='warriors.php';</script>";
            }
        }
    }
    ?>
     
  6. DIAgen

    DIAgen Banned Life!

    Joined:
    2 May 2006
    Messages:
    1,055
    Likes Received:
    376
    Reputations:
    460
    Найде где регистрируется session_register('login');
    и все станет на свои места! Здесь только проверяется зарегестрирована ли сессия со значение 'login', если нет, тогда уже вход в игру!
     
  7. ferryman

    ferryman Elder - Старейшина

    Joined:
    13 Feb 2006
    Messages:
    88
    Likes Received:
    8
    Reputations:
    5
    DIAgen прав, лучше перепиши на $_SESSION и гемороя иметь не будешь...
     
  8. Tem

    Tem -

    Joined:
    5 Oct 2005
    Messages:
    557
    Likes Received:
    157
    Reputations:
    179
    примерно в каких файлах может это быть ?
     
  9. DIAgen

    DIAgen Banned Life!

    Joined:
    2 May 2006
    Messages:
    1,055
    Likes Received:
    376
    Reputations:
    460
    Ну это надо смотреть куда посылаются даные которые ты водишь с главной страницы, а проще найти через тотал строчку session_register('login')
     
  10. DimaHbl4

    DimaHbl4 Elder - Старейшина

    Joined:
    9 May 2006
    Messages:
    234
    Likes Received:
    27
    Reputations:
    11
    Кстати для этого дела пользуйся Delphi, я когда патчи для игр мутил им пользовался. Указываешь папку в котрой искать, и че искать.....Он тебе файлы выдает которые искать.
     
  11. Tem

    Tem -

    Joined:
    5 Oct 2005
    Messages:
    557
    Likes Received:
    157
    Reputations:
    179
    Пипец я месец делфи ишю негде найти немогу )) если есть дай сылку на довланд.
     
  12. zyl

    zyl Elder - Старейшина

    Joined:
    19 Apr 2006
    Messages:
    24
    Likes Received:
    13
    Reputations:
    0
    Вот могу ссылочку дать на сайт "поклонников" delphi:
    _http://www.programmersclub.ru/help
    А учёбник можно запрос в поисковике сделать типа "Учебник по Delphi 6 для чайников"
    Последнее слово ни к кому не относится =)
     
    1 person likes this.
  13. Tem

    Tem -

    Joined:
    5 Oct 2005
    Messages:
    557
    Likes Received:
    157
    Reputations:
    179
    + я тебе дам ))) за то что хотел помоч, но мне редактор делфи нужен ))
     
  14. DimaHbl4

    DimaHbl4 Elder - Старейшина

    Joined:
    9 May 2006
    Messages:
    234
    Likes Received:
    27
    Reputations:
    11