Hola, me estoy volviendo loca haciendo un función, no sé por qué se me repiten los resultados. Incluso cuando no defino $ssql me aparece el error de variable undefined dos veces. Y en la base de datos no tengo registros repetidos.
function estas_autenticado(){
//compruebo que exiten variables de sesión.
if(isset($_SESSION["nombre_usuario"]) && isset($_SESSION["apellidos_usuario"]) && isset($_SESSION["email_usuario"]) && isset($_SESSION["contrasena_usuario"])){
//voy a comprobar en la base de datos que existe
$ssql = "select nombre from usuario where email='" . $_SESSION["email_usuario"] . "'and contrasena='" . md5($_SESSION["contrasena_usuario"]) . "'";
echo $ssql; //ME DICE EMAIL: TAL CONTRASEÑA: TAL. EMAIL :TAL CONTRASEÑA: TAL, (DOS VECES LO MISMO)
//compruebo si la sentencia ssql va bien.
if($rs=mysql_query($ssql)){
//compruebo que esa sentencia me devuelve un usuario.
if(mysql_num_rows($rs)==1){ // POR ESO ESTO NUNCA SE ME CUMPLE, PORQUE ME APARECEN COMO DOS REGISTROS, SUPONGO.
$usuario_encontrado=mysql_fetch_array($rs);
if($usuario_encontrado["nombre"]==$_SESSION["nombre_usuario"]){
//si todo esta bien devueve true, en caso contrario false.
return true;
echo $ssql;
}
}else{
echo "no hay solo un registro"; //ME PONE NO HAY SOLO UN REGISTRO NO HAY SOLO UN REGISTRO. (de manera duplicada)
}
}else{
echo "no val query";
}
}return false;
}
Lo que sale: select nombre from usuario where email='ma'and contrasena='cf96bce69f409820e4b6bce661eb4e78'no hay solo un registro select nombre from usuario where email='ma'and contrasena='cf96bce69f409820e4b6bce661eb4e78'no hay solo un registro
¿Alguien sabe a qué se puede deber? Gracias!!!