Cakephp aut проблема с перенаправлением - PullRequest
1 голос
/ 12 июля 2011

У меня проблемы с перенаправлением компонента Auth.

У меня есть форма входа в систему, и я хочу, чтобы пользователь оставался на странице, в которую он входит.Например, если он просматривает страницу «Свяжитесь с нами», я хочу оставить его там после входа в систему. Я сделал страницу входа в качестве своей страницы входа для проверки. В противном случае я не могу проверить пустое поле пароля.Вот код контроллера моего пользователя:

function beforeFilter () {

    $this->Auth->allow('register');
         $this->Auth->autoRedirect = false;
    parent::beforeFilter();

}

function loginaction () {

     if($this->data){
    if($this->data['User']['email']=='')
           $this->Session->setflash('E-Mail cannot be blank');
    elseif ($this->data['User']['password']=='')
        $this->Session->setflash('Password cannot be blank');
    else {
                 $this->data['User']['password']=$this->Auth->password($this->data['User']['ppassword']);
         if($this->User->validateUser($this->data)){
         $this->Auth->login($this->data);
         $this->redirect($this->Auth->redirect()); 

}}

иНиже приведен мой код app_controller:

function beforeFilter () {

        $this->Auth->fields = array(
        'username' => 'email',
        'password' => 'password'
        );

        $this->Auth->loginAction=array('controller'=>'users', 'action'=>'loginaction');


     }

Это будет перенаправлять на страницу, с которой пользователь вышел из системы. Но я хочу, чтобы перенаправление происходило на страницу, откуда пользовательнажимает кнопку входа.Я не понимаю, где я не прав.

1 Ответ

2 голосов
/ 12 июля 2011

Если вам нужно перенаправить на страницу реферера, вы можете использовать:

$this->redirect($this->referer());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...