我正在为Yii 1.1.12中的学生系统进行辅导,但我陷入了用户会话管理。
我和其他三个人在一起。我正在使用权限进行角色管理。
问题是,如果遵循特定的链接序列,其他两个人正在退出,但不是我(也不是最后一个人)。
过程是这样的: 我们有一个登录表单(Yii提供的默认登录表单,但是使用db登录)
然后用户出现在仪表板中,他有一个菜单,在主要信息中,有一个链接(在左侧菜单中等于一个)到一个动作。
如果用户点击主要部分中的链接(图像中的蓝色链接),则会转到该操作。
这里我们有一个带有注册导师的表(在数据库表中),带有一个链接(它看起来像一个按钮,但是CSS,红色的那些灰色),用于将学生分配给该导师。
突然,系统注销用户再次询问用户名和密码
正如您在变量值中看到的那样,当发生这种情况时,我们将Yii :: app-> user-> isGuest()视为真(在此之前它是假的)。
按钮链接的构建方式如下:
<td>
<?php echo CHtml::link('Dar de baja', array('desactivar', 'id'=>$academic->id), array('class'=>'btn btn-mini btn-danger')); ?>
<?php echo CHtml::link('Expediente', array('view', 'id'=>$academic->id), array('class'=>'btn btn-mini')); ?>
</td>
第二张图片中的链接也是这样构建的:
<?php echo CHtml::link('Asignación e información de tutores', array('tutor/registered')); ?>
左侧菜单是zii.widgets.CMenu,$ menu是用以下内容构建的:
array('label'=>'Asignación e información de tutores', 'url'=>array('/tutor/registered')),
我解释这个的原因是因为这个注销错误只是这样发生的。如果用户没有选择蓝色链接,则单击左侧菜单项(两个链接看起来都相同),它们不会被注销。
编辑:如果他点击左侧菜单项,用户也会退出。
此外,即使我点击蓝色链接,我也没有收到此错误,我在OSX中尝试使用chrome,safari和firefox以及使用IE的Windows 8,即使在Safari for iOS中也是如此。
这个错误的两个人使用Windows与Chrome,Firefox和IE。
我认为我在按钮中链接的操作是错误的,但我更改了它仍然出错。
我正在考虑会话问题或cookie问题,但我不知道究竟要测试什么,因为我在相同的浏览器中测试它并没有得到错误。
请注意,我正在使用版权模块,我们正在不同地点测试应用程序(我不能去其他两个人看看它是否与ISP有关,但我不知道我认为是)。有什么建议?