SiZE
Новичок
Cookie с точкой и без
имею самопальную функцию
Ситуация такая, для site.ru и sub.site.ru как видно из кода домен устанавливается без точки в начале имени. А куки в браузере получаются с точкой .site.ru и .sub.site.ru Смотрел через фаербаг заголовки HTTP, имена доменов передаются без точек. Соответственно возникает баг, кукисы с одним и тем же именем и когда мы получаем их для sub.site.ru то они перекрываются с site.ru
Как это исправить?
имею самопальную функцию
PHP:
/**
* Устанавливает cookie
*
* @param string Имя
* @param string Значение
* @param integer Время истечения куки в днях
* @return void
*/
function cookieSet ( $name, $value='', $expires_x_days=0 ) {
// Устанвливаем переменные
if ( $expires_x_days ) {
$expires = time() + ( $expires_x_days * 86400 );
} else {
$expires = FALSE;
}
$config = Zend_Registry::get('cnf');
// Эта строка была добавлена что бы убедится что точно нет никаких точек :)
$host = preg_replace('#^\.#','',$_SERVER['HTTP_HOST']));
setcookie( $config->cookie->prefix.$name, $value, $expires, $config->cookie->path, $host);
//new Zend_Http_Cookie( $cookie_prefix.$name, $value, $cookie_domain, $expires, $cookie_path);
}
Как это исправить?