validacion de usuario en mysqli
Publicado por carlos (1 intervención) el 30/11/2021 05:43:23
Hola quisiera que me ayuden a resolver este error PHP Notice: Undefined offset: 0 in line 21 y line 25 (gracias de antemano por sus respuesta)
<?php
include_once("conexion.php");
include("constantes.php");
class Usuario
{
private $login;
private $contrasena;
function __construct($login,$contrasena)
{
$this->login=$login;
$this->contrasena=md5($contrasena);
}
function Buscar()
{ global $Datos;
$BaseDato=new BaseDeDato(SERVIDOR,USUARIO,CLAVE,BD);//declarar el objeto de la clase base de dato
$Consulta="SELECT * FROM tf_usuarios AS a WHERE (a.usuario='$this->login') AND
(a.clave='$this->contrasena')";//declarar la consulta
$Resultado=$BaseDato->Consultas($Consulta);//llamar a la funcion de la base de dato que realiza las consulta
$Datos=mysqli_fetch_all($Resultado);//Devuelve los datos en forma de arreglo
if($Datos[0]['estado']=='1') // (linea 21) si estado es 1 es usuario inactivo si es 0 es usuario activo
echo "<script>alert('Usuario no activado por Administrador!');
document.location.href='../login.php';</script>\n";
if($Datos[0]['usuario']) //(linea 25) verificar si arrojo algun resultado
{
//aqui confirmamos la validaci�n
//verifica si usuario es 1 es administrador y muestra todo el menu
$row=$Datos;
$id=trim($row[0]['id_usuario']);
$n=ucfirst($row[0]['nombres']);
$ap=ucfirst($row[0]['ape_paterno']);
$am=ucfirst($row[0]['ape_materno']);
$tipo_isu=$row[0]['tipo_usuario'];
$nombre = $n." ".$ap." ".$am;
$login=$this->login;
//uso sesiones
session_set_cookie_params( time() + 600);
$_SESSION["usuario"] = $login;
$_SESSION["nombre"] = $nombre;
$_SESSION["id_usuario"]= $id;
$_SESSION["tipo_usuario"]= $tipo_isu;
echo "<script>;
document.location.href='../menu.php';</script>\n";
}
else
{
echo "<script>alert('Usuario y/o Clave Incorrecto(s) ! ');
document.location.href='../login.php';</script>\n";
return 0;
}
}
function Existencia($Condicion)
{
$BaseDato=new BaseDeDato(SERVIDOR,USUARIO,CLAVE,BD);
if($Condicion=='login')
$Condicion="login="."'$this->login'";
else
$Condicion="contrasena="."'$this->contrasena'";
$Consulta="SELECT *FROM tf_usuarios WHERE ".$Condicion;
$Resultado=$BaseDato->Consultas($Consulta);//llamar a la funcion de la base de dato que realiza las consulta
$Datos=mysqli_fetch_all($Resultado);//Devuelve los datos en forma de arreglo
if($Datos[0]['login'])
return 1;
else
return 0;
}
}
?>
<?php
include_once("conexion.php");
include("constantes.php");
class Usuario
{
private $login;
private $contrasena;
function __construct($login,$contrasena)
{
$this->login=$login;
$this->contrasena=md5($contrasena);
}
function Buscar()
{ global $Datos;
$BaseDato=new BaseDeDato(SERVIDOR,USUARIO,CLAVE,BD);//declarar el objeto de la clase base de dato
$Consulta="SELECT * FROM tf_usuarios AS a WHERE (a.usuario='$this->login') AND
(a.clave='$this->contrasena')";//declarar la consulta
$Resultado=$BaseDato->Consultas($Consulta);//llamar a la funcion de la base de dato que realiza las consulta
$Datos=mysqli_fetch_all($Resultado);//Devuelve los datos en forma de arreglo
if($Datos[0]['estado']=='1') // (linea 21) si estado es 1 es usuario inactivo si es 0 es usuario activo
echo "<script>alert('Usuario no activado por Administrador!');
document.location.href='../login.php';</script>\n";
if($Datos[0]['usuario']) //(linea 25) verificar si arrojo algun resultado
{
//aqui confirmamos la validaci�n
//verifica si usuario es 1 es administrador y muestra todo el menu
$row=$Datos;
$id=trim($row[0]['id_usuario']);
$n=ucfirst($row[0]['nombres']);
$ap=ucfirst($row[0]['ape_paterno']);
$am=ucfirst($row[0]['ape_materno']);
$tipo_isu=$row[0]['tipo_usuario'];
$nombre = $n." ".$ap." ".$am;
$login=$this->login;
//uso sesiones
session_set_cookie_params( time() + 600);
$_SESSION["usuario"] = $login;
$_SESSION["nombre"] = $nombre;
$_SESSION["id_usuario"]= $id;
$_SESSION["tipo_usuario"]= $tipo_isu;
echo "<script>;
document.location.href='../menu.php';</script>\n";
}
else
{
echo "<script>alert('Usuario y/o Clave Incorrecto(s) ! ');
document.location.href='../login.php';</script>\n";
return 0;
}
}
function Existencia($Condicion)
{
$BaseDato=new BaseDeDato(SERVIDOR,USUARIO,CLAVE,BD);
if($Condicion=='login')
$Condicion="login="."'$this->login'";
else
$Condicion="contrasena="."'$this->contrasena'";
$Consulta="SELECT *FROM tf_usuarios WHERE ".$Condicion;
$Resultado=$BaseDato->Consultas($Consulta);//llamar a la funcion de la base de dato que realiza las consulta
$Datos=mysqli_fetch_all($Resultado);//Devuelve los datos en forma de arreglo
if($Datos[0]['login'])
return 1;
else
return 0;
}
}
?>
Valora esta pregunta


0