Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.01.2020, 15:45   #1
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию Не могу подружиться с куками

Здравствуйте.

Я в очередной раз возвращаюсь к этому вопросу, и у меня не получается то, о чём интернете все пишут что это просто даже дебил поймёт (я могу быть и хуже).

Суть вопроса: нужно поставить куку, прочитать её (читать каждый раз при заходе на сайт), при необходимости удалить.

Как я пытаюсь это сделать, на конкретном примере

Код:
var_dump($_COOKIE); // это для отладки, что бы охреневать от того что я вижу здесь и в COOKIE Editor
if (!isset($_COOKIE['timer_start'])) // если не установлена
	setcookie('timer_start',strval($_stamp*1000),$_stamp+604800,'/','',false,true); // ставим куку, пробовал с разными наборами парамтров
else;

/* ... */

echo $_COOKIE['timer_start']; // прочитали куку

/* ... */

if (isset($_COOKIE['timer_start'])) // если установлена
{
	setcookie('timer_start','',0,'/','',false,true); // обнулить
	unset($_COOKIE['timer_start']); // иногда полезно для тестирования работы удалять куку
} else;
$_COOKIE=Array();
Проблема идёт в отрыве от задачи; у меня кука не всегда ставится, не всегда удаляется, и не всегда читается, а когда читается - её на самом деле нет. Вплоть до того что я вижу куку где var_dump, и больше нигде её не вижу, даже там где она читается в этом же запросе.

Вопрос: что я тут делаю не так ?
У меня раньше получалось сделать работу с куками, открыл тот проект, попробовал так же (скопировал код) - не работает.
Полностью перезапустил браузер - кука появилась до вызова кода установки. Это как вообще работает ?

Работаю в приватном режиме.
Подпись ? Не, не слышал ...

Последний раз редактировалось OmegaBerkut; 29.01.2020 в 15:48.
OmegaBerkut вне форума Ответить с цитированием
Старый 29.01.2020, 17:00   #2
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Вот я опять что-то сделал, и куки заработали.
Экспериментировать сейчас нет времени, и так до следующей необходимости ... Потом опять с этим же бубном возиться.
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Старый 29.01.2020, 17:34   #3
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

Код:
$_COOKIE=Array();
так лучше не надо.. но конечно влияет не оно,
а вот что -
новые куки будут доступны только после перезагрузки страницы

Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
echo $_COOKIE['timer_start']; // прочитали куку
это ты не новую прочел..... а еще старую
ADSoft вне форума Ответить с цитированием
Старый 30.01.2020, 03:36   #4
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Цитата:
Сообщение от ADSoft Посмотреть сообщение
новые куки будут доступны только после перезагрузки страницы
У меня кука не была доступна вообще. Потом стало всё нормально.
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Старый 30.01.2020, 08:19   #5
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

вопрос все равно не понят....
я вижу в коде после изменения кук - вы читаете тут же ее, так нельзя
ADSoft вне форума Ответить с цитированием
Старый 30.01.2020, 09:16   #6
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Цитата:
Сообщение от ADSoft Посмотреть сообщение
я вижу в коде после изменения кук - вы читаете тут же ее, так нельзя
А так нужно =)

Суть задачи: поставить время начала работы таймера, и запустить таймер на странице после этого же запроса, то есть в этом же запросе нужно понять какое время было поставлено, и не поставить его заново.
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Старый 30.01.2020, 11:03   #7
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,150
По умолчанию

Цитата:
Сообщение от OmegaBerkut Посмотреть сообщение
А так нужно =)
не нужно

используйте переменные

Код:
if (!isset($_COOKIE['timer_start'])) {
        // если не установлена
        $start = strval($_stamp*1000);
	setcookie('timer_start',$start,,$_stamp+604800,'/','',false,true);
} else {
        $start = $_COOKIE['timer_start'];
}


/* ... */

echo $start;
ADSoft вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как подружиться с Videolan WorldMaster Visual C++ 1 31.03.2018 01:31
Помогите подружиться с socket_select lollollollol PHP 0 30.03.2014 09:44
Эквалайзер...что это? кто это? Можно ли с ним подружиться? .Phoenix Мультимедиа в Delphi 45 08.04.2010 23:37
Не выходит подружиться с функцией... Anohorett Общие вопросы C/C++ 2 25.02.2010 16:18
не могу подружиться с strcat() i-cpp Общие вопросы C/C++ 2 17.02.2010 20:14