在登录模块中,我在控制器中为其创建cookie。我可以验证cookie存在。我遵循YII框架但是当我得到cookie时它有错误。这是错误:
尝试获取非对象的属性
$username = Yii::app()->request->cookies['loginSuccess']->value;
这是我创建cookie:
if($model->validate() && $model->login()){
$cookie = new CHttpCookie('loginSuccess',$model->username);
$cookie->expire = 604800;
Yii::app()->request->cookies['loginSuccess'] = $cookie;
$this->redirect('/ktbeauty/index.php/categories/index');
}
我重定向之前的var_dump cookie就像这样显示:
object(CHttpCookie)#37 (9)
{
["name"]=> string(12)
"loginSuccess" ["value"]=> string(7)
"sacpv04" ["domain"]=> string(0) "" ["expire"]=> int(604800)
["path"]=>string(1) "/" ["secure"]=> bool(false) ["httpOnly"]=> bool(false)
["_e":"CComponent":private]=> NULL ["_m":"CComponent":private]=> NULL
}
非常感谢
答案 0 :(得分:1)
试试这个
$cookie->expire = time() + 604800;
此表达式将cookie设置为在当前时间604800之后到期 这对你有用:)