2015-12-16 146 views
0

我的網站有三個不同的登錄名,當我使用每個不同的頁面登錄時,它必須是相同的主佈局。我的代碼如下。頁面重定向在cakephp

public $components = array(
    'Session','Auth' => array(
     'redirectUrl' => array('controller'=>'login', 'action'=>'index'), 

     'loginRedirect' => array('controller'=>'truckallocation', 'action'=>'index'), 
     'logoutRedirect' => array('controller'=>'home', 'action'=>'index'), 
     if ($this->Auth->login()) { 
    if($this->Auth->user('role') == 'dealer') { 
    $this>redirect(array('controller'=>'purchaseorder','action'=>'index'); 
    } 
    } 

     'authenticate' => array(
      'Form' => array(
       'userModel' => 'User', 
       'fields' => array(
        'username' => 'username', 
        'password'=>'password' 
       ), 
       'scope' => array('User.active'=>1), 
       'passwordHasher'=>'Blowfish' 
      ) 
     ) 
    ) 
); 

此代碼無效。什麼是錯誤?

+0

據糊塗,你說不同的頁面和主頁。請問我是否在談論佈局或模板? – Tsumannai

+1

目前還不清楚你在問什麼。請更新您的問題,提供更多關於您想要實現的細節。只要快速瀏覽一下你的代碼,一個明顯的問題是你已經在你的'$ components'變量的中間放了一個'if'語句,這個變量不是有效的PHP! – drmonkeyninja

+0

你是什麼意思的不同頁面?我認爲你有一個登錄頁面,登錄角色是不同的像經銷商賣家等。請清楚提及。 – Shaddy

回答

0

你不需要,如果您的組件init的數組中的語句。 你需要的地方這句話在你的登錄操作,檢查,如果用戶登錄和他的類型重定向到必要的頁面後