@zekin375

Как остаться на той же странице после авторизации?

В данный момент после авторизации пользователь переходит на страницу /personal/ требуется остаться на той же странице где и был пользователь.

Если ставлю window.location.href = ' '; работает но только с второго раза авторизуется, с первого просто происходит обновление странице.

function loginModalForm() {
    event.preventDefault(); //prevent default action
    var form_data = $('.loginModalForm').serialize(); //Encode form elements for submission
    let form_result = $('.loginModalForm .form_result');
    $.ajax({
        url: '/ajax/login.php',
        type: 'POST',
        data: form_data,
        async: true,
        beforeSend: function () {
            $("#loading").show();
        },
        success: function (data) {
            if (data == 1) {
                closeModalWindow();
                $("#loading").show();
                window.location.href = '/personal/';
                form_result.html();
            } else {
                form_result.html(data);
            }
            $('#loading').fadeOut('fast');
        },
        error: function () {
            $('#loading').fadeOut('fast');
        }
    });
}
  • Вопрос задан
  • 176 просмотров
Пригласить эксперта
Ответы на вопрос 3
nefone
@nefone
Junior PHP разработчик
Надо удалить строчку из кода:
window.location.href = '/personal/';
Ответ написан
Комментировать
Aetae
@Aetae
Тлен
Должно работать, хз почему не отдупляется.

Попробуй закостылять задержку:
вместо window.location.href = '/personal/'; поставь:
setTimeout(function(){ window.location.reload();}, 1000)
Если даже секундная задержка ни на что не повлияет, значит по адресу /personal/ лежит какой-то говнокод, влияющий на авторизацию.

Хотя ещё вариант - какой-то говнокэш. Чтоб проверить это замени: window.location.href = '/personal/'; на: window.location.search = Math.random();
Ответ написан
Комментировать
@PetrPo
ну типа ты же сам переход делаешь. замени window.location.href = '/personal/';
на window.location = window.location;
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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