Olá a todos.
Estou a desenvolver uma página web em que o sistema de login é feito com Ajax e PHP.
O código é o seguinte:
Ajax:
PHP:
O problema é que depois de verificar que os dados introduzidos estão corretos, não consigo redirecionar a página.
Se na página .php no final do código colocar "header('location: index.php')", na página que contém o código Ajax as duas páginas vão-se sobrepor (eu sei que parece um pouco estranho e também nunca tinha visto nada assim).
Enviando uma palavra qualquer (por exemplo 'log') através do echo, tudo bem. O problema é que no código Ajax a condição que verifica se o texto é igual a 'log' (para nesse caso redirecionar a página) não está a funcionar. Retorna sempre falso e passa à frente. Já experimentei com outras palavras, já tentei em vez de "if(data=='log')" por "if(data==' log')" e nada. O estranho é que se eu fizer um "alert(data)" o que aparece é "log".
Alguém me poderia ajudar ?
Obrigado
Estou a desenvolver uma página web em que o sistema de login é feito com Ajax e PHP.
O código é o seguinte:
Ajax:
Código:
var string = "email=" + email + "&pass=" + pass;
$.ajax({
type: "POST",
url: "signin.php",
data: string,
beforeSend: function() {
$('#div_error').html("Testando ...");
$('#div_error').fadeIn('slow');
},
success: function(data){
if(data=="log") {
window.location = 'index.php';
}
else {
$('#div_error').html(data);
$('#div_error').fadeIn('slow');
}
}
});
PHP:
Código:
$_SESSION['user_email']=$email;
$instruc=mysql_query("SELECT * FROM users WHERE email=$email");
$id_row=mysql_fetch_array($instruc);
$_SESSION['user_id']=$id_row['id'];
echo "log";
O problema é que depois de verificar que os dados introduzidos estão corretos, não consigo redirecionar a página.
Se na página .php no final do código colocar "header('location: index.php')", na página que contém o código Ajax as duas páginas vão-se sobrepor (eu sei que parece um pouco estranho e também nunca tinha visto nada assim).
Enviando uma palavra qualquer (por exemplo 'log') através do echo, tudo bem. O problema é que no código Ajax a condição que verifica se o texto é igual a 'log' (para nesse caso redirecionar a página) não está a funcionar. Retorna sempre falso e passa à frente. Já experimentei com outras palavras, já tentei em vez de "if(data=='log')" por "if(data==' log')" e nada. O estranho é que se eu fizer um "alert(data)" o que aparece é "log".
Alguém me poderia ajudar ?
Obrigado