Как установить и получить куки?

12

После нескольких дней и более часов я обнаружил проблемы и исправления, касающиеся того, что делать после установки файла cookie, но никто не упоминает, как вы вначале получили набор файлов cookie.

Нашим намерением было бы установить (сеансовый) cookie-файл целевой страницы (для ВСЕХ пользовательских ролей) и извлечь этот cookie-файл на определенных страницах через представления для использования в URL-адресе исходящей ссылки. Это было бы очень просто в стандартном программировании (даже я понимаю), но у меня начинаются серьезные сомнения, возможно ли это в Drupal.

Riccardorb
источник

Ответы:

4

Drupal уже устанавливает сессионный cookie, когда пользователь входит в систему: см. Функцию drupal_session_regenerate () .

Можете ли вы использовать этот идентификатор сессии для своих целей? Если нет, то вам просто нужно создать новое значение в cookie так же, как в PHP $_COOKIE['my_value'];. Поместите этот код в hook_init()пользовательский модуль, добавив его if()для фильтрации целевой страницы.

Позже вы извлекаете его и используете по своему усмотрению; Вы можете использовать некоторые из хуков видов в зависимости от ваших потребностей. Вы также можете использовать настраиваемое поле Views и встраивать туда свой PHP-код.

Corbacho
источник
1
Если все, что ему нужно, это значение сеанса, то он $_SESSION[]тоже может его использовать , так как сеанс всегда инициализируется из Drupal.
kiamlaluno
2

Вы можете установить cookie с помощью: setcookie('cookiename',$valueOfCookie);

Вы можете получить значение cookie с помощью: $_COOKIE['cookiename']

Ибрагим
источник