当前位置: 首页 > news >正文

茂名公司网站制作电子商务平台的建设

茂名公司网站制作,电子商务平台的建设,网络防御中心是什么,网站建设图片尺寸要求今天遇到了权限控制的问题#xff0c;后台不同级别的用户登录后看到的内容是不一样的。网上查了下#xff0c;说Yii中有自带的RBAC权限控制#xff0c;大概看了下#xff0c;没理解太明白。然后就是采用filter进行过滤验证#xff0c;看着这个还不错。下面简单说下我是我怎… 今天遇到了权限控制的问题后台不同级别的用户登录后看到的内容是不一样的。网上查了下说Yii中有自带的RBAC权限控制大概看了下没理解太明白。然后就是采用filter进行过滤验证看着这个还不错。下面简单说下我是我怎么用的不对的地方希望大神们给予指教。1.在cp_user表里增加了一个level字段代表用户的级别1代表管理员admin2代表普通用户common_user2.在components的UserIdentity.php里添加用户角色class UserIdentity extends CUserIdentity {/*** Authenticates a user.* The example implementation makes sure if the username and password* are both demo.* In practical applications, this should be changed to authenticate* against some persistent user identity storage (e.g. database).* return boolean whether authentication succeeds.*/public function authenticate(){$usernamestrtolower($this-username);$userUser::model()-find(LOWER(username)?,array($username));if($usernull)$this-errorCodeself::ERROR_USERNAME_INVALID;else if($user-password!$this-password)$this-errorCodeself::ERROR_PASSWORD_INVALID;else{$this-username$user-username;$this-setState(roles, $user-level1?admin:commen_user); //添加用户角色$this-errorCodeself::ERROR_NONE;}return $this-errorCodeself::ERROR_NONE;}}上面这句$this-setState(roles,$user-level1?admin:commen_user)非常重要这里表示添加了一个用户的角色3.重写CWebUser,放在components文件夹下(WebUser.php)class WebUser extends CWebUser {/*** Overrides a Yii method that is used for roles in controllers (acce***ules).** param string $operation Name of the operation required (here, a role).* param mixed $params (opt) Parameters for this operation, usually the object to access.* return bool Permission granted?*/public function checkAccess($operation, $paramsarray()){if (empty($this-id)) {// Not identified no rightsreturn false;}$role $this-getState(roles);if ($role admin) { //管理员return true; // admin role has access to everything}// allow access if the operation request is the current users rolereturn ($operation $role);} }4.控制器里修改public function filters(){return array(accessControl, // perform access control for CRUD operationspostOnly delete, // we only allow deletion via POST request);}/*** Specifies the access control rules.* This method is used by the accessControl filter.* return array access control rules*/public function acce***ules(){return array(array(allow, // allow all users to perform index and view actionsactionsarray(index,view,login,passwordupdate),usersarray(*),),array(allow, // allow authenticated user to perform create and update actionsactionsarray(create,update,getuser,delete),rolesarray(admin),//表示只有角色为admin的用户才能访问),array(deny, // deny all usersusersarray(*),),);}5.修改配置文件main.phpuserarray(// enable cookie-based authenticationclassWebUser,allowAutoLogintrue,loginUrl array(/user/login),),6.视图中如何用array(namestatus, typehtml, valueCustomer::showStatus($data-status, $data-id),visible Yii::app()-user-checkAccess(admin)),array(nameemployee_id, typehtml, valueCustomer::isDivided($data-employee_id, $data-id),visible Yii::app()-user-checkAccess(admin)),原理当用户登录的时候获取用户的level字段并添加相应的角色若是1则该用户为admin否则就是common_user.然后重写CWebUser中的checkAccess方法如果是admin则有权操作相应的权限。最后在控制器里rules里定义规则有一个roles属性我们给它设置为admin表示只有角色为admin的才能进行相关的action操作。 转载于:https://blog.51cto.com/php2013/1363163
http://www.zqtcl.cn/news/448183/

相关文章:

  • 东莞网站建设技术支持产品推广怎么写
  • 银川app购物网站制作公司网站建设怎样提升形象与品牌价值
  • 中山城市建设集团网站信誉好的邯郸网站建设
  • 做网站很赚钱吗贵阳网站建设费用
  • 设计网站的关键点用ps做招生网站
  • 制作网站公司服务器租赁一年的费用网页动画是如何制作出来的
  • 佛山网站优化有莱芜房产网新房
  • 西安英文旅游网站建设中国建筑工程门户商城
  • 山东企业建站软件购物网站是多少
  • 外链收录网站语音识别程序代做网站
  • 天津平台网站建设公司wordpress删除页头页尾
  • 网站加入站长统计wordpress设置手机浏览器
  • 服务器网站备案怎么做网站流量竞品分析
  • 四川省建设工程信息网站上海金融网站制作公
  • php7.2 wordpress黑帽seo软件
  • 网站后台cms做网站项目团队口号
  • 云南哪几个建网站公司九江做网站哪家好
  • 时尚网站模板代码网站模板炫酷
  • 股票网站怎么做动态表格live2d看板娘wordpress
  • 班级网站建设开题报告企业创新平台建设
  • 网站建设有什么要求建设电子商务网站的步骤
  • 百度推广和哪些网站有合作专业网站开发多少钱
  • 相城区住房建设局网站做网站开发电脑配置
  • 成都网站建设制作photoshop网页制作视频教程
  • 深圳网站做的好的公司广州外贸营销网站建设公司
  • 网站你懂我意思正能量晚上不用下载直接进入微信公众号免费模板素材网站
  • 网站设计模板之家南宁seo外包平台
  • 免费舆情网站遵义市双控体系建设网站
  • 企业做网站得多少钱wordpress get_posts
  • 轻淘客网站怎么做申请个人网址