doubinei1457 2015-01-06 08:48
浏览 74
已采纳

只有一个用户可以打开admin.ctp文件

I want to do a page, and this page can open only one user. I want to do something like this: If user id = 1 then its opening else its throwing error.

I already tried this :

if (in_array($this->action, array('controller' => 'users', 'action' => 'admin'))) {
        $postId = (int) $this->request->params['pass'][0];
        if ($this->User->isOwnedBy($postId, $users['id'] = 1)) {

            return true;
        }else{echo "You are not admin!";}

    }

Then I thinked, maybe this is a little bit easier ?

public function admin($id = null) {

            $this->User->id = $id;
                if ($id == 1) {
                    echo 'You are admin';
                }
                else {
                    throw new NotFoundException(__('You are not admin !'));
                }
        }

But its not working, How I get this user id in to this if. This second solution throwing only this error, but I dont want it, I want access if user id is 1.

Here is users picture

enter image description here

Thank you for any clue or solution.

  • 写回答

4条回答 默认 最新

  • dssu33392 2015-01-06 09:13
    关注

    Try this-

    public function admin($id = null) {
       $currentUserId = $this->Auth->user(id);
       //$isAdmin       = $this->User->hasAny(
          //array('User.id' => $currentUserId)
       //);
       //if ($isAdmin) {
       if ($currentUserId == 1)
           echo 'You are admin';
       } else {
           throw new NotFoundException(__('You are not admin !'));
       }
    }
    

    For logged in users.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上