2
這是我的問題:我有一個管理區域,我用名稱和密碼登錄保護它。
當我輸入的網址我的意思是像localhost/admin /區域它重定向到本地主機/用戶/管理
問題是,如果我輸入一個錯誤的地址,如本地主機/管理員/ 545
它讓我到管理區並在控制器
這錯誤是我的代碼:cakephp錯誤登錄時,我輸入一個錯誤的網址
的AppController:
function beforeFilter()
{
$this->Auth->loginAction = array('controller'=>'users','action'=>'login','admin'=>false);
$this->Auth->authorize = array('Controller');
if(!isset($this->request->params['prefix']))
{
$this->Auth->allow();
}
if(isset($this->request->params['prefix']) && $this->request->params['prefix'] == 'admin')
{
$this->layout = 'admin';
}
}
function isAuthorized($user)
{
if(!isset($this->request->params['prefix']))
{
return true;
}
}
菜單:
<?php
$pages = $this->requestAction(array('controller'=>'pages','action'=>'menu','admin'=>false)); ?>
<a href="/index"><img class="title" src="/img/title.png" alt="studio"></a>
<ul class="menu">
<?php foreach($pages as $k => $v): $v = current($v);?>
和代碼的其餘部分是:
功能登錄:
function login()
{
if ($this->request->is('post'))
{
if ($this->Auth->login())
{
return $this->redirect($this->Auth->redirect());
} else {
$this->Session->setFlash("Votre login ou votre mot de passe ne correspond pas");
}
}
}
格式化您的代碼,以便人們可以看到發生了什麼。 – dogmatic69
然後指定你得到的錯誤。 – Alvaro