cookie php удаляются после закрытия браузера

Discussion in 'PHP' started by dondy, 29 Jul 2015.

  1. dondy

    dondy Member

    Joined:
    5 Jun 2015
    Messages:
    560
    Likes Received:
    61
    Reputations:
    5
    всё работает нормально, но после закрытия браузера они удаляются, задано время 1 час
    setcookie("test",$_SESSION['test'],time()+3600);
    ps браузеры разные - chrome opera и ff, везде стоит сохранять куки
    из за чего такое происходит ?
     
  2. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    Проверь время сервера и время компа где запущен браузер.
     
  3. dondy

    dondy Member

    Joined:
    5 Jun 2015
    Messages:
    560
    Likes Received:
    61
    Reputations:
    5
    тестирую на локальном сервере, время одинаковое
    вот например код примера счетчика
    он же должен запоминаться после закрытия браузера ?
    PHP:
    <?php
    ini_set
    ('session.gc_maxlifetime'3600*24*30);
    ini_set('session.cookie_lifetime'3600*24*30);
    session_start();
    if (!isset(
    $_SESSION['count'])) {
      
    $_SESSION['count'] = 0;
    } else {
      
    $_SESSION['count']++;
      
    setcookie("count",$_SESSION['count']++,time()+3600*24*30);
    }
    echo 
    $_SESSION['count'];
    ?>
     
  4. dondy

    dondy Member

    Joined:
    5 Jun 2015
    Messages:
    560
    Likes Received:
    61
    Reputations:
    5
    методом тыка - убирая строку за строкой нашёл причину:
    header('Set-cookie: name=id');
    оно и ставило длительность до закрытия браузера
     
    makag likes this.
  5. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    От этого и происходят проблемы. Ты нам показал рабочий код, изрядно думав, что другой код лишний и не содержит ошибок, а оказалось вот как.
     
  6. dondy

    dondy Member

    Joined:
    5 Jun 2015
    Messages:
    560
    Likes Received:
    61
    Reputations:
    5
    есть одна непонятка, делаю удаление куки
    setcookie ("cookie_name", "", 1);
    но одна не удаляется, это копия другой куки только в браузере вот такие отличия:

    .site.ru
    Путь: /script.php
    Отправить: Только защищенные соединения

    перед адресом сайта точка
    Только защищенные соединения и путь к скрипту полный

    у той которая удаляется:
    путь до папки скрипта
    адрес без точки
    Отправить: Любой тип соединения

    скрипт грузится через iframe, но на странице куда грузится нет сессий, всё делается через фрейм
    id название и значения одинаковые - как и даты создания и окончания
    незнаю что с этой cookie делать - почему не хочет удаляться?
     
    #6 dondy, 29 Jul 2015
    Last edited: 29 Jul 2015