cds-wh
- cds-wh 回复了话题 求助:cookie问题
我也想了在userIdentity 中做的方法,但是如果用户直接拿个地址去访问受限页面,不经过登陆页,他的cookie有,所以他是有权限访问的,这时就不会访问userIdentity,所以也不会触发Yii::app()->user->getState('email'),导致后面页面调用出错。还是放到用这个数据那个页面好。
- cds-wh 回复了话题 求助:cookie问题
最后我还是直接根据id到数据库里查了下。过程:
1、登陆;
2、查看Yii::app()->user->email是否定义;
3、如果没定义,根据Yii::app()->user->id在库中找到对应的email,然后Yii::app()->user->setState;
4、以后如果用email的时候,直接Yii::app()->user->email就行了。
如此解决了自动登录时记录email数据的功能。最后感谢以上朋友的回复! - cds-wh 回复了话题 求助:cookie问题
谁能帮忙说下啊,这样的需求一般怎么做的啊?:)
- cds-wh 回复了话题 求助:cookie问题
public function login() { if($this->_identity===null) { $this->_identity=new UserIdentity($this->username,$this->password); $this->_identity->authenticate(); } if($this->_identity->errorCode===UserIdentity::ERROR_NONE) { $duration=$this->rememberMe ? 3600*24*30 : 0; // 30 days Yii::app()->user->login($this->_identity,$duration); return true; } else return false; }
先谢谢两位的回复,可能我没说明白,上面是我的登陆代码,写在CFormModel类中,当用户登录时选中了“记住登陆状态”单选框,下次访问时就不用再登陆,而且直接在页面用Yii::app()->user->name就可得到登录账户名,现在我还想让email也是这种可以直接取出来,不知道可不可以,上面你们说的cookie做法是重新再写个cookie,可能和我的想法有点差异。
- cds-wh 发布了话题求助:cookie问题
如果正确,你的WSDL中应该有你的函数方法描述,现在看你的WSDL中没有,说明路径或定义出了问题,不用调别的,首先保证WSDL输出正确,其他的不用看先。
$client=new SoapClient('http://hostname/path/to/index.php?r=stock/quote');
应为:
$client=new SoapClient('http://hostname/path/to/index.php?r=web/quote');
需要看看你的代码是怎么写的,接口类的完整代码。