0

私はcakephpが初めてです。ログイン中に問題が発生しました。名前とパスワードが間違っていると、ログイン ホームページにリダイレクトされます。

ユーザーコントローラー.php

public function login() {
    $this->layout = 'admin-login';
    if ($this->request->is('post')) {
        if ($this->Auth->login($this->request->data)) {
            return $this->redirect($this->Auth->redirectUrl())
        } else {
            $this->Session->setFlash(__('Username or password is incorrect'), 'default', array(), 'auth');
        }
    }
}

AppController.php

 public $components = array(
    'Session',
    'Auth' => array(
        'loginRedirect' => array('controller' => 'users', 'action' => 'index'),
        'logoutRedirect' => array('controller' => 'users', 'action' => 'login'),
        'loginAction' => array('controller' => 'users', 'action' => 'login')
    )
);

 public function beforeFilter() {
    $this->Auth->allow("login");
    //$this->Auth->authorize = array('Controller');
    $this->Auth->authenticate = array(
        'Form' => array (
            'scope'  => array(
                'User.is_active' => 1
            ) 
        )
    );   
}
public function isAuthorized($user) {
    return true;
}

ログイン.ctp

echo $this->Form->create('User');
echo $this->Form->input('username');
echo $this->Form->input('password'); 
echo $this->Form->submit(__('Submit');
echo $this->Form->end();

間違ったユーザー名とパスワードを入力して [送信] ボタンをクリックすると、ホームページにリダイレクトされます。ありがとうございます。

4

2 に答える 2