С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/35: Рейтинг темы: голосов - 35, средняя оценка - 4.97
0 / 0 / 0
Регистрация: 07.08.2014
Сообщений: 19

Не записываются куки

15.09.2014, 18:07. Показов 7527. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вначале писал авторизацию. Но не получилось. Решил проверить записываются ли куки. Написал простой скрипт:
PHP
1
2
setcookie("naa", "КУКИ", time()+60*60*24*30); 
echo $_COOKIE['naa'];
В чем ошибка?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.09.2014, 18:07
Ответы с готовыми решениями:

Не записываются куки
После удачного входа, не записываются куки $good_name = 'test'; $good_pass = 'test'; if(isset($_POST)){ ...

Не записываются данные в куки на php
Пишу регистрацию и авторихзацию на AJAX. Сам код работает отлично, но данные в куки не записываються. В чем проблема? Что не так?...

В выходной фаил записываются вместе с ответом записываются каракули. Помогите исправить ошибку
#include <iostream> using namespace std; void funk (int n, int k) { freopen("input.txt", "rt", stdin); ...

12
Native x86
Эксперт Hardware
 Аватар для quwy
6853 / 3787 / 1024
Регистрация: 13.02.2013
Сообщений: 11,861
15.09.2014, 18:18
Ф-ция setcookie() добавляет в HTTP-ответ заголовок, который заставляет браузер сохранить переданное значение. Больше она ничего не делает. И только при следующем запросе, браузер передаст сохраненное значение скрипту.

Добавлено через 1 минуту
Официальная документация:
Цитата Сообщение от http://php.net/manual/ru/function.setcookie.php
После передачи клиенту cookie станут доступны через массивы $_COOKIE и $HTTP_COOKIE_VARS при следующей закгрузке страницы.
0
0 / 0 / 0
Регистрация: 07.08.2014
Сообщений: 19
15.09.2014, 19:08  [ТС]
quwy, то есть мне нужно просто перезагрузить страницу или что?
0
Native x86
Эксперт Hardware
 Аватар для quwy
6853 / 3787 / 1024
Регистрация: 13.02.2013
Сообщений: 11,861
15.09.2014, 19:13
Ях, скажите для начала, чего вы хотите добиться установкой куки?
0
0 / 0 / 0
Регистрация: 07.08.2014
Сообщений: 19
15.09.2014, 19:23  [ТС]
quwy, есть id пользователя и код. Хочу сохранить их в куки, далее сравнивать, если такие есть, то пользователь авторизован, если нет, то не авторизован.

Но сейчас я хочу проверить, пишутся ли вообще куки. Как я понимаю, они должны отобразиться в settings/cookies (браузер яндекс). Или, как я понимаю, если я пишу
PHP
1
echo $_COOKIE['naa'];
То они должны вывестись. Исправь меня где я не прав и не мог бы написать простой скрипт, после которого бы я понял, как же работают куки.
0
Native x86
Эксперт Hardware
 Аватар для quwy
6853 / 3787 / 1024
Регистрация: 13.02.2013
Сообщений: 11,861
15.09.2014, 19:30
Цитата Сообщение от Ях Посмотреть сообщение
То они должны вывестись.
Вы мыслите правильно до того момента, когда думаете, что установленные только что куки должны сразу появиться в $_COOKIE. Это не так. В этом массиве они появятся при следующих запросах пользователя, когда их пришлет браузер. Если вам нужно, чтобы сразу после setcookie(), они были доступны в массиве, запишите их туда руками:
PHP
1
2
3
setcookie("naa", "КУКИ", time()+60*60*24*30); 
$_COOKIE['naa'] = "КУКИ";
echo $_COOKIE['naa'];
В этом случае ф-ция setcookie() установит их в браузере и при следующих запросах в $_COOKIE['naa'] будет нужное значение. А пока обрабатывается текущий запрос, нужное вам поведение просто эмулируется рычным присваиванием.
1
0 / 0 / 0
Регистрация: 07.08.2014
Сообщений: 19
15.09.2014, 19:44  [ТС]
quwy, а, например, мне нужно хранить в куках переменную, которую после перезагрузки страницы инкрементирую.
PHP
1
2
3
4
5
6
if (!isset($_COOKIE['naa'])) 
{
    setcookie("naa", 0, time()+60*60*24*30); 
    $_COOKIE['naa']=0;
}
echo $_COOKIE['naa']++;
Или опять напутал?
0
Native x86
Эксперт Hardware
 Аватар для quwy
6853 / 3787 / 1024
Регистрация: 13.02.2013
Сообщений: 11,861
15.09.2014, 19:46
Цитата Сообщение от Ях Посмотреть сообщение
Или опять напутал?
Не, так должно работать.

Добавлено через 1 минуту
Только, наверное, все-таки
PHP
1
echo ++$_COOKIE['naa'];
А то два раза 0 выведет.
0
0 / 0 / 0
Регистрация: 07.08.2014
Сообщений: 19
15.09.2014, 19:48  [ТС]
quwy, проверил, всегда ноль. Может надо, даже не инструментирует хотя бы раз.
не заметил, ща гляну

Добавлено через 1 минуту
Работает, только вот я подумал, наверно как-то кук надо перезаписывать, дабы снова он 0 не равнялся.

Добавлено через 21 секунду
То есть не работает, а всегда 1.
0
Native x86
Эксперт Hardware
 Аватар для quwy
6853 / 3787 / 1024
Регистрация: 13.02.2013
Сообщений: 11,861
15.09.2014, 19:51
Цитата Сообщение от Ях Посмотреть сообщение
Работает, только вот я подумал, наверно как-то кук надо перезаписывать, дабы снова он 0 не равнялся.
Ну да, тот факт, что вы его увеличили в массиве $_COOKIE, никак не отменяет сохраненного браузером нуля. setcoockie() нужно вызывать всегда, когда нужно сохранить новое значение.
0
0 / 0 / 0
Регистрация: 07.08.2014
Сообщений: 19
15.09.2014, 19:53  [ТС]
PHP
1
2
3
4
5
6
7
if (!isset($_COOKIE['naa'])) 
{
    $_COOKIE['naa']=0;
}
$cook = ++$_COOKIE['naa'];
echo $cook;
setcookie("naa", $cook, time()+60*60*24*30);
Так у меня не работает

Добавлено через 56 секунд
А как проверить что кук в браузере пишется?
0
Native x86
Эксперт Hardware
 Аватар для quwy
6853 / 3787 / 1024
Регистрация: 13.02.2013
Сообщений: 11,861
15.09.2014, 19:55
setcookie нужно вызывать до какого-либо вывода через echo. Перечитайте справку по этой функции.

Цитата Сообщение от Ях Посмотреть сообщение
А как проверить что кук в браузере пишется?
В настройках браузера должно быть видно.
1
0 / 0 / 0
Регистрация: 07.08.2014
Сообщений: 19
15.09.2014, 21:25  [ТС]
Цитата Сообщение от quwy Посмотреть сообщение
В настройках браузера должно быть видно.
На домене висит один кук от вордпресса, которого давно нет и все.
http://copyloc.ru/ - зайди на сайт. там увидишь единичка, это и есть скрипт, который выше писал, попробуй у себя в настройка глянуть, пишется ли кук.

Добавлено через 2 минуты
Проверил с мозилы - тоже нет.

Добавлено через 1 час 8 минут
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
// отправка cookie
setcookie("cookie[three]", "cookiethree");
setcookie("cookie[two]", "cookietwo");
setcookie("cookie[one]", "cookieone");
 
// после перезагрузки страницы, выведем cookie
if (isset($_COOKIE['cookie'])) {
    foreach ($_COOKIE['cookie'] as $name => $value) {
        $name = htmlspecialchars($name);
        $value = htmlspecialchars($value);
        echo "$name : $value <br />\n";
    }
}
?>
Даже скопипастил с офф фака, но все равно не выводит...

Добавлено через 13 минут
Ой ужас то какой. РЕШИЛ ПРОБЛЕМУ. Дело в том, что на хостинге стояла СТАРАЯ ВЕРСИЯ php, то есть та, которая не поддерживала куки...

Как всегда, теряю время из-за ерунды

Спасибо тебе за помощь quwy
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.09.2014, 21:25
Помогаю со студенческими работами здесь

Куки и CookieContainer - нужно, чтобы отправлялись все три куки
Создаю контейнер: CookieContainer cookieContainer = new CookieContainer(); И затем цепляю его к первому запросу: ...

Как куки одного домена сохранить как куки другого?
Здравствуйте, такой вопрос: нужно cookie на домене aaaaaa.com сохранить как cookie домена bbbbbb.com. Как это можно сделать?

Записываются помехи
При записи 2 микрофонов на расстоянии 40 метров от behringer U-phoria umc404hd по XLR кабелю записываются только помехи и никаких звуков,...

Не записываются значения в БД
Доброго времени! class Bd{ public $name; public $phone; public $comment; public function...

В БД не записываются значения
Этот сервис обрабатывает поступившее сообщение. sms_body_name и sms_body_text имеют нужные значения (строка 65 и 66), а вот в БД вообще...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru