За последние 24 часа нас посетили 63579 программистов и 1743 робота. Сейчас ищут 1348 программистов ...

cookies не удаляются

Тема в разделе "PHP для новичков", создана пользователем gooffy, 31 авг 2008.

  1. gooffy

    gooffy Активный пользователь

    С нами с:
    8 апр 2008
    Сообщения:
    42
    Симпатии:
    0
    собственно происходит переход по ссылке типа
    /start.php?logout=true

    устанавлены куки user_login и user_pass

    Я честно пытался удалить куки всеми возможными способами, переприсваивал их даже, убивал сессии, разинициализировал переменные, но они ВСЕ РАВНО ЖИВУТ

    PHP:
    1.  
    2. <?
    3. if($_GET["logout"])
    4. {
    5.     print "выход";
    6.     print $_COOKIE["user_login"];
    7.     print $_COOKIE["user_pass"];
    8.     setcookie("user_login", '666');
    9.     setcookie("user_pass", '666');
    10.     print $_COOKIE["user_login"];
    11.     print $_COOKIE["user_pass"];
    12.     unset($_SESSION['user_login']);
    13.     unset($_SESSION['user_pass']);
    14.     session_unset();
    15.     setcookie("user_login");
    16.     setcookie("user_pass");
    17.     print "log=".$_COOKIE["user_login"];
    18.     print "pass=".$_COOKIE["user_pass"];
    19.  
    20. }
    21. ?>
    22.  
    23. <?
    24. if(($_COOKIE["user_login"] && $_COOKIE["user_login"]!=666) && ($_COOKIE["user_pass"] && $_COOKIE["user_pass"]!=666)):
    25. print "123";
    26.     //header("Location:index.html");
    27.     //exit;
    28. else:
    29. ?>
    30. <html>
    31. <head>
    32. <title>Введи пароль, смертный</title>
    33. </head>
    34. <body>
    35.  
    36.     <form action="authorize.php" method="post">
    37.     Логин  :<input type="text" name="user_login"><br>
    38.     Пароль:<input type="password" name="user_pass"><br>
    39.     <input type="submit" name="sub_enter" value="Вход">
    40.     Запомнить пароль?<input type="checkbox" name="checkbox" value="1">
    41.     </form>
    42.  
    43.     <form action="register.php" method="post">
    44.     <input type="submit" name="sub_regist" value="Регистрация">
    45.     </form>
    46.  
    47. </body>
    48. </html>
    49. <?endif;?>
     
  2. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    error_reporting(E_ALL);
    в начале пропиши
     
  3. gooffy

    gooffy Активный пользователь

    С нами с:
    8 апр 2008
    Сообщения:
    42
    Симпатии:
    0
    никаких ошибок не выводит
     
  4. gooffy

    gooffy Активный пользователь

    С нами с:
    8 апр 2008
    Сообщения:
    42
    Симпатии:
    0
    устанавливаются вот так

    PHP:
    1. if(isset($_POST["checkbox"]))
    2. {
    3.     setcookie("user_login", $_POST["user_login"]);
    4.         setcookie("user_pass",  $_POST["user_pass"]);
    5. }
     
  5. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?


    Код (Text):
    1.   print "выход";
    2.      print $_COOKIE["user_login"];
    3.      print $_COOKIE["user_pass"];
    4.      setcookie("user_login", '666');
    5.      setcookie("user_pass", '666');
    ты тут сначало хидеры отправляешь, а потом куки ставишь, странно что ошибок не выводит...
     
  6. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    Код (Text):
    1. print $_COOKIE["user_login"];
    2.      print $_COOKIE["user_pass"];
    это XSS кстати...
     
  7. gooffy

    gooffy Активный пользователь

    С нами с:
    8 апр 2008
    Сообщения:
    42
    Симпатии:
    0
    вопрос снимается. нельзя назначить cookie на одной странице и сразу же его использовать.
    если обновить, то cookie благополучно убиваются.