Я сейчас работаю над AJAX-логином для моего приложения.В верхней части стартовой страницы есть ссылка для входа в систему, которая открывает диалог с формой входа при нажатии, но у меня есть несколько проблем:
- Когда пользователь ввел неправильные данные или данные отсутствуют, ошибки не отображаются
- Когда я нажимаю «Вход» и JsHelper обновляет «шаблон», а я снова нажимаю «Вход», он перенаправляет меня на http://www.url.com/users/login (что не должно происходить)
- Когда я ввожу правильные logindata, я вошел в систему, но перенаправление не выполняется или отображается сообщение.
Я думаю, что сейчас выложу весь необходимый код для анализа.
UsersController :: login ()
public function login() {
if($this->RequestHandler->isAjax()) {
$this->layout = 'ajax';
$this->render('/elements/users/login');
}
return $this->Auth->login();
}
elements / ajax / login.ctp Это шаблон для диалогового окна входа в систему.
<?php echo $this->Session->flash(); ?>
<fieldset>
<?php
echo $this->Session->flash();
echo $this->Form->create(
'User',
array(
'controller' => 'users',
'action' => 'login'
)
);
echo $this->Form->input(
'email',
array(
'label' => 'E-Mail',
'style' => 'width: 270px;'
)
);
echo $this->Form->input(
'password',
array(
'style' => 'width: 270px;'
)
);
echo $this->Js->submit(
'Login',
array('url' => array(
'controller' => 'users',
'action' => 'login'
),
'update' => '#loginContainer')
);
echo $this->Form->end();
?>
</fieldset>
Я думаю, что это как-то связано с UsersController :: login (), но я не знаю, где искать.Так может ты сможешь мне помочь?Спасибо:)