用户登录yii

时间:2014-06-13 00:29:57

标签: php yii

我是yii的新人。我在一个不允许客人的项目上工作。每当用户尝试访问应用程序时,如果用户未登录,则会显示登录页面。如果登录成功,它将重定向到主页。我弄清楚如何通过数据库进行用户身份验证。但是,如果我想将所有访客重定向到登录页面,那么最好的方法是什么?还有如何在控制器中获取登录用户的role_id?

1 个答案:

答案 0 :(得分:1)

阅读此部分http://www.yiiframework.com/doc/guide/1.1/en/topics.auth#access-control-filter,Yii可以自动为您处理。

    array('allow', // Allow all actions for logged in users ("@")
        'actions' => array(....),
        'users' => array('@'),
    ),

表示只允许登录用户访问控制器中的那些操作。

班级的例子

class MyController extends CController {
    public function filters()
    {
        return array( 'accessControl' ); // perform access control for CRUD operations
    }

    public function accessRules()
    {
        return array(
            array('allow', // allow authenticated users to access all actions
                'users'=>array('@'),
            ),
            array('deny'),
        );
    }
}

然后你可以为你的所有控制器(登录控制器除外)

class SomeController extends MyController {