Hello! I'm logging in with Jquery and PHP, the connection is right. But when I soon rather than keep on a page he does not find my session and sends me back to login.
My HTML:
<h2 id="errolog">Usuário ou senha errados!</h2>
<form id="formlogin">
<input type="email" id="email" placeholder="Digite seu e-mail" required="" />
<input type="password" id="senha" placeholder="Senha" required="" />
<button type="submit">Entrar</button>
</form>
<script type="text/javascript" src="jquery-3.2.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#errolog').hide(); //Esconde o elemento com id errolog
$('#formlogin').submit(function(){ //Ao submeter formulário
var login=$('#email').val(); //Pega valor do campo email
var senha=$('#senha').val(); //Pega valor do campo senha
$.ajax({ //Função AJAX
url:"manifesta_login22.php", //Arquivo php
type:"post", //Método de envio
data: "login="+login+"&senha="+senha, //Dados
success: function (result){ //Sucesso no AJAX
if(result==1){
location.href='restrito.php' //Redireciona
}else{
$('#errolog').show(); //Informa o erro
}
}
})
return false; //Evita que a página seja atualizada
})
})
</script>
Connecting to PHP:
<?php
$con = mysqli_connect("localhost","root","root","login2");
$login=$_POST['login']; //Pegando dados passados por AJAX
$senha=$_POST['senha'];
//Consulta no banco de dados
$sql="select * from usuarios where email='".$login."' and senha='".md5($senha)."'";
$resultados = mysqli_query($con, $sql) or die (mysqli_error());
$res=mysqli_fetch_array($resultados); //
if (@mysqli_num_rows($resultados) == 0) {
echo 0; //Se a consulta não retornar nada é porque as credenciais estão erradas
}
else {
echo 1; //Responde sucesso
if(!isset($_SESSION)) { //verifica se há sessão aberta
session_start(); //Inicia seção
//Abrindo seções
$_SESSION['usuarioID']=$res['id'];
$_SESSION['nomeUsuario']=$res['nome'];
$_SESSION['email']=$res['email'];
exit;
}
}
?>
Page Logged:
<?php
session_start(); //A seção deve ser iniciada em todas as páginas
if (!isset($_SESSION['usuarioID'])) { //Verifica se há seções
header("Location: login.html"); //Redireciona o visitante para login
}
?>