в CakePHP я хочу иметь 2 куки, поскольку им нужно разное время истечения ... могу ли я это сделать? - PullRequest
0 голосов
/ 26 августа 2011

Я пытался вот так -

 // ================
// = set a Cookie for the users city =
// ================
function set($cityId = null){

    $this->components[] = 'RequestHandler';

    $this->components[] = 'Cookie';
    $this->Cookie->name = 'Exampleoffers';  
    //$this->Cookie->time =  3600;  // or '1 hour' 
    //$this->Cookie->path = '/bakers/preferences/';   
    $this->Cookie->domain = 'www.example.co.uk';     
    $this->Cookie->secure = false;  
    $this->Cookie->key = 'kkjdDqSI232qs*&sXOw!';

    $cities = ($this->City->find('list'));  

    if($cities[$cityId]) {
        $this->Cookie->write ("Deal.city_id", (int) $cityId, false, "+2 months");

    } else {
        $this->Cookie->write ("Deal.city_id", key($cities), false, "+2 months");

    }

однако, я не уверен, конфликтует ли это с моим Authsome cookie (?) Или чем-то еще, но я не могу прочитать это значение обратно.

Есть ли какой-нибудь способ указать, из какого куки вы хотите читать () в CakePHP?

Есть ли способ получить cookie с двумя различными значениями времени истечения? - то есть файл cookie имеет User.id со сроком действия 1 неделя и Deal.city_id со сроком действия 2 месяца, скажем? Или я прав, что мне нужны 2 куки?

большое спасибо за любые советы. Это торт 1,3 кстати!

1 Ответ

1 голос
/ 26 августа 2011

Вы можете помнить, что файлы cookie сохраняются в системе, поэтому, если вы сохраняете файл cookie только один раз в этой системе, он будет иметь заданные значения, однако вы не можете иметь 2 файла cookie с одним и тем же именем, что означает, что когда перейдите и сохраните куки, вам придется сделать это:

$this->Cookie->write('Name1', $data, false, $time);

$this->Cookie->write('Name2', $data, false, $time);

Если вы этого не сделаете, один перезапишет другой.

РЕДАКТИРОВАТЬ: Добавление некоторых ссылок, если у вас есть больше сомнений:

Страница API CookieComponent: http://api13.cakephp.org/class/cookie-component

Страница поваренной книги CookieComponent: http://book.cakephp.org/view/1280/Cookies

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...