I'm learning to work with $_SESSION
variables and I'm having problems every time I start the easyPHP server. I separated the code into 3 parts:
The first part checks whether the user is already logged in or logging in:
<?php
session_start();
$conexao = mysqli_connect('localhost', 'root', '', 'ecomoveis');
if((isset($_POST['pEmail']) && isset($_POST['pSenha'])) || (isset($_SESSION['logado'])))
{
if(isset($_POST['pEmail']) && isset($_POST['pSenha']))
{
$consulta = mysqli_query($conexao, "SELECT * FROM tb_usuario WHERE usu_Email = '$_POST[pEmail]' AND usu_Senha = '$_POST[pSenha]'");
if(mysqli_num_rows($consulta) != 0)
{
if($resultado = mysqli_fetch_assoc($consulta))
{
$_SESSION['logado'] = $resultado['usu_Nome']; #Salva em uma variável de Sessão a ID do usuário que está logado
header("location: ../HTML/EcoMoveis.php");
}
else
{
echo "<script>alert('Este E-Mail não existe ou\nUsuário e/ou Senha incorreto!')</script>";
header("location: ../HTML/LoginEco.html");
}
}
}
else
{
echo "<script>alert('Este E-Mail não existe')</script>";
header("location: ../HTML/LoginEco.html");
}
}
else
{
//return false;
echo "<script>alert('Usuário e/ou Senha incorreto!')</script>";
}
?>
The second part checks if the session exists
<?php
session_start();
unset($_SESSION['logado']);
echo "<script>alert('Você foi desconectado!');window.location='../HTML/EcoMoveis.php'</script>";
?>
Finally the last part that is the part where the name of the currently logged in user is shown
<?php
session_start();
if($_SESSION['logado'] == "")
{
echo "".$_SESSION['logado'];
}
else
{
echo "<br>Olá, ".$_SESSION['logado'];
echo ' - <a href=../PHP/Desloga.php>Sair</a>';
}
?>
But when I first start the server or move it out of the session it returns me this message:
Notice: Undefined index: logado in C:\Program Files (x86)\EasyPHP-Devserver-17\eds-www\EcoMoveis\HTML\EcoMoveis.php on line 84
.