Primero de todo decir que soy novato en este tema y nunca he tocado el tema PHP pero estoy haciendo una página web en la cual necesito iniciar la sesión usuarios y quede registrada la id o el email del usuario(me da igual cual de los dos); pero necesito poder identificar quien ha hecho el login para luego capturar esa variable y añadirla a las reservas que haga. os pego el código que tengo!
<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
... código html...
<div id="btnlogin">
<p><input id="botonlogin" class="submit" type="submit" name="login" value="Iniciar sessió"></p>
<?php
include_once($_SERVER['DOCUMENT_ROOT']."/web/query/classUser.php"); include_once($_SERVER['DOCUMENT_ROOT']."/web/query/validation.php");
if (isset($_POST['login'])){
if(isset($_POST['email']) && isset($_POST['password'])){
$email= $_POST['email'];
$password = $_POST['password'];
$user = new User();
$user->login($email,$password);
echo "ID de la sesion: ".session_id();
if($_SESSION['email']== $email){
echo "Sessió iniciada";
?>
<script>
alert("L'usuari "+ $email+" ha iniciat sessió");
</script>
<?php
}
}
}
?>
</div>
tengo aparte una classUser.php donde tengo esta función:
function login($email, $password){
$email = $this->escape($email);
$password = $originalPassword = $this->escape($password);
$query = "SELECT * FROM Usuari WHERE Email = '".$email."' AND Password = '".$password."'";
$data = $this->connection->consult($query);
if($data){
userSession($data[0]);
}
else{
echo"<p style='text-align:center; color:red'>Email o password incorrecte</p>";
}
--------------------
el problema es que si me hace el login correctamente, es decir, si pongo un email falso me salta el error de que no coinciden el email con el password pero si es satisfactorio no consigo que entre en el condicional $_SESSION..
Muchas gracias por vuestra ayuda!