@eldar_web

Как реализовать авторизацию через ajax через модальное окно в yii2?

Допустим, есть модальное окно и она сработало, вот оно:
<div class='modal fade' id='contact'>
    <div class='modal-dialog'>
	    <div class='modal-content'>
		    <div class='modal-header'>
			    <a href='' class='close' data-dismiss='modal'>x</a>
			    <center><h4>Авторизация</h4></center>
			</div>
			<div class='modal-body'>
			<span>Введите логин:</span>
			<input type='text' class='login_user' />
			<br />
			<br />
			<span>Введите пароль:</span>
			<input type='password' class='password_user' />
			</div>
			<div class='modal-footer'>
			<span class='result_inform'></span>
			<?= Html::submitButton('Войти', ['class' => 'btn btn-primary', 'id' => 'aut']) ?>
			</div>
		</div>
	</div>
  </div>


Подскажите пожалуйста, как при нажатии на кнопку (.aut) реализовать авторизацию асинхронно?

То есть, предлагайте пожалуйста правильный ajax-запрос и action в контроллере.

ajax+jquery:

$('.aut').click(function(e){
e.preventDefault();
var data = {
username:$('.login_user').val(),
password:$('.password_user').val()
}

// а дальше что?

});

Controller:

actionLogin()
{

// Тут что ?

}
  • Вопрос задан
  • 3924 просмотра
Пригласить эксперта
Ответы на вопрос 2
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Геракли — yii2 — специалисты, как тут использовать ajax-запрос?

решили измором брать?

Вы понимаете что принципиальной разницы между ajax и не ajax авторизацией в принципе и нету? Меняется только метод отправки данных. Данные же на сервере обрабатываются так же.

То есть стэпы решения задач:
1) учимся вместо отправки формы отправлять ajax запрос
2) учимся обрабатывать данные присланные нам через POST
3) учимся авторизовывать пользователя
4) учимся отвечать пользователю в зависимости от того, какой запрос нам сделали, ajax или не ajax. Или делаем на клиенте унифицированное решение отлавливая редирект.
Ответ написан
Комментировать
AloneCoder
@AloneCoder
[object Object]
Вы даже примеры не удосужились посмотреть к самому фреймворку
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы