Итак, когда нажата кнопка входа в систему, я использую метод POST JQuery для получения данных из login.php, если логин был успешным или нет. Если это не было (пользователь не найден), он корректно отображает сообщение.Перенаправление после запроса JQuery AJAX от PHP
Но когда я хочу перенаправить пользователя (пользователь существует), он распечатывает всю веб-страницу в один DIV.
JQuery после того, как кнопка нажата:
$(function(){
$("#login-form").submit(function() {
event.preventDefault();
var name = $('#inputName').val();
var password = $('#inputPassword').val();
$.post("login.php",
{
name: name,
password: password
},
function(data)
{
$("#resultDiv").hide().html(data).fadeIn(1000).effect("shake", {direction:"up",times:2, distance:10}, 750);
});
});
});
Если Войти не удалось, он отображает. Но когда я хочу, чтобы перенаправить, doesen't работы:
if(!$row) {
echo '<div class="alert alert-danger" style="margin-top:25px; margin-bottom: 0px; text-align:center;">Invalid <strong>username</strong> or <strong>password</strong>.</div>';
} else {
$line = mysqli_fetch_assoc($query);
$_SESSION['IP'] = $line["IP"];
$_SESSION['ID'] = $line["ID"];
$_SESSION['username'] = $username;
header("location:choose.php");
}
Таким образом, когда пользователь входит в систему, как я просто перенаправить его? Не хотите ничего показывать.
Почему бы не перенаправить с помощью 'JavaScript'? 'echo'' true' и проверить, равно ли возвращенное значение 'true', если оно будет перенаправлено. – Script47
Почему бы не удалить ajax полностью? В этом случае это просто усложняет ситуацию. –
Потому что я не хочу, чтобы страница перезагружалась, если логин не был успешным (сообщение отображается JQuery, если это не так). – fidtal