Печенье Cakephp 1.2 не сохраняется правильно - PullRequest
1 голос
/ 29 декабря 2011

Я использую Cakephp 1.2 (старый сайт) и пытаюсь внедрить cookie.

В моем app_controller в действии beforeFilter () есть следующее объявление Cookie:

function beforeFilter()
{
    $this->Cookie->name = 'MyCookie';
$this->Cookie->time = '10 Days`s';
//$this->Cookie->domain = '';
$this->Cookie->key = 'securitytoken';
}

На одной из моих страниц (действие) у меня есть следующее:

 $cookie = $this->Cookie->read('T1');
 echo $cookie;
 echo $this->Cookie->read('T1');
 echo 'a';

//set cookie so we can keep track of this
if(empty($cookie))
{
    echo 'b';
$this->Cookie->write('T1', 'Y');
}

echo 'c';
echo $this->Cookie->read('T1');
echo 'd';

При запуске выход всегда выводит:

abcYd

Когда я запускаю его во второй раз, он также выводит abcYd, чего не должно быть. Во второй раз переменная cookie T1 не должна быть пустой. Что не так?

Ответы [ 2 ]

0 голосов
/ 28 февраля 2012

Проверьте, содержит ли ваш URL какой-либо символ #, а затем сначала удалите его.

0 голосов
/ 29 декабря 2011

Cookies должны быть отправлены до любого вывода из вашего скрипта. попробуйте удалить операторы "echo" и посмотрите, что произойдет.

...