Foros del Web » Programando para Internet » PHP »

Fallo inicio de sesión

Estas en el tema de Fallo inicio de sesión en el foro de PHP en Foros del Web. Muy buenas amigos, a ver si me podeis ayudar, no me sale ningún error ni nada, simplemente vuelve a la página con las casillas en ...
  #1 (permalink)  
Antiguo 26/01/2019, 11:22
Avatar de jorjo  
Fecha de Ingreso: abril-2007
Ubicación: España
Mensajes: 90
Antigüedad: 12 años, 6 meses
Puntos: 1
Fallo inicio de sesión

Muy buenas amigos,
a ver si me podeis ayudar, no me sale ningún error ni nada, simplemente vuelve a la página con las casillas en blanco.

Os dejo los códigos:

index.php
Código PHP:
<?php
session_start
();
include(
"datos_bd.php");
include(
"funciones.php");
include(
"usuarios.php");
include(
"utilidades.php");
include(
"ocasion.php");
include(
"novedades.php");
include(
"variables.php");
?>
<!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" dir="ltr" lang="en-US">
<head profile="http://gmpg.org/xfn/11">
    <title>Administrador</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link rel="icon" href="../images/favicon.ico" type="image/x-icon">
    <link rel="stylesheet" href="../css/grid.css">
    <link rel="stylesheet" href="../css/style.css">
    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.4.2/css/all.css" integrity="sha384-/rXc/GQVaYpyDdyxK+ecHPVYJSN9bmVFBvjA/9eOB+pb3F2w2N6fc5qB9Ew5yIns" crossorigin="anonymous">
<script src="maxheight.js" type="text/javascript"></script>
<script type="text/javascript" src="DD_belatedPNG.js"></script>
<script type="text/javascript">
DD_belatedPNG.fix('.main');
</script>
</head>
<body onload="new ElementMaxHeight();">
<?php
$row 
ValidaSesiones($opcion$usuario$password$login);
$validat $row["validat"];
$error $row["error"];
?>
<div class="page">
    <header>
        <div id="stuck_container" class="stuck_container">
            <div class="container">
                <div class="brand">

                    <p class="brand_slogan">
                        Administrador
                    </p>
                </div>
                <nav class="nav">
                    <?php TraerMenu($validat$error); ?>
                </nav>
            </div>
        </div>
    </header>
    <main>
        <section style="background-color:#003669">
            <div class="container">
                    <?php TraerContenido($validat); ?>
            </div>
        </section>
    </main>
<script src="js/script.js"></script>
</body>
</html>

datos_bd:
Código PHP:
<?php class Datos {
    
//Propiedades
    
var $BaseDatos;
    var 
$Host;
    var 
$Usuario;
    var 
$Password;

    
//Constructor
    
function Datos(){
        
$this->BaseDatos "nombre_bd";
        
$this->Host "localhost";
        
$this->Usuario "user";
        
$this->Password "password";
    }

    
//Ejecutar
    
function Ejecutar($sql){
        
$con mysqli_connect("$this->Host","$this->Usuario","$this->Password");
        
$result mysqli_query($this->BaseDatos,$sql,$con);        
        
mysqli_close($con);
        return 
$result;
    }

    
//TraerFila
    
function TraerFila($sql){
        
$con mysqli_connect("$this->Host","$this->Usuario","$this->Password");
        
$result mysqli_fetch_array(mysqli_query($this->BaseDatos,$sql,$con));
        
mysqli_close($con);
        return 
$result;
    }

    
//TraerArray
    
function TraerArray($sql){
        
$con mysqli_connect("$this->Host","$this->Usuario","$this->Password");
        
$result mysqli_query($this->BaseDatos,$sql,$con);
        
mysqli_close($con);
        return 
$result;
    }
}
?>

funciones.php
Código PHP:
<?php
// VALIDA LA SESIÓN
function ValidaSesiones($opcion$usuario$password$login){
    
$validat "no";
    
$error "";
    if (empty(
$_SESSION['usuario'])){
        if (empty(
$login)){
            
$validat "no";
        }elseif (
$login == Entrar){
            
$usu = new Usuarios();
            
$row $usu->Validar($usuario);
            if(!empty(
$row['usuario'])){
                if((
$usuario==$row['usuario'])&&($password==$row['password'])){
                    
$validat "si";
                    
$_SESSION['usuario']=$row['usuario'];
                    
$_SESSION['password']=$row['password'];
                }elseif((
$usuario==$row['usuario'])&&($password<>$row['password'])){
                    
$validat "no";
                    
//Iniciamos la sesión...
                    
session_start();
                    
//Vaciamos la sesión...
                    
$_SESSION=array();
                    
//Destruimos las sesión...
                    
session_destroy();
                    
$error "Datos incorrectos";
                }
            }elseif(empty(
$row['usuario'])){
                
$validat "no";
                
//Iniciamos la sesión...
                
session_start();
                
//Vaciamos la sesión...
                
$_SESSION=array();
                
//Destruimos la sesión...
                
session_destroy();
                
$error "Datos incorrectos";
            }
        }
    }else{
        if (
$opcion=="logout"){
            
//Iniciamos la sesión...
            
session_start();
            
//Vaciamos la sesión...
            
$_SESSION=array();
            
//Destruimos la sesión...
            
session_destroy();
            
$validat "no";
        }else{
            
$validat "si";
        }
    }

    
//Devolvemos los datos...
    
$row["validat"] = $validat;
    
$row["error"] = $error;
    return 
$row;
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////// TRAER MENU ///////////////////////////////////////////////////////////
function TraerMenu($validat$error){ ?>
<?php 
if ($validat == "no"){ ?>
    <table width="100%"  height="300px">    
        <tr>
            <td style="vertical-align:top"><br/><br/><br/>
                <table>
                    <?php if (!empty($error) || $error <> ""){ ?>
                    <tr><td colspan="4"><div style="color:#FF0000"><?php echo $error?></div></td></tr>
                    <?php ?>
                    <form name="login" method="post" action="index.php">
                    <tr><td>&nbsp;</td><td style="text-align:right">Usuario:</td><td>&nbsp;</td><td><input type="text" name="usuario" value="" size="15" maxlength="15"></td></tr>
                    <tr><td>&nbsp;</td><td style="text-align:right">Contrase&ntilde;a:</td><td>&nbsp;</td><td><input type="password" name="password" value="" size="15" maxlength="15"></td></tr>
                    <tr><td>&nbsp;</td><td></td><td></td><td style="text-align:right"><input type="submit" name="login" value="Entrar"></td></tr>
                    </form>
                </table>
            </td>
        </tr>
    </table>    
<?php }elseif ($validat == "si"){ ?>
.
.
.

usuarios.php
Código PHP:
<?php
class Usuarios {
    
//Constructor
    
function Usuarios(){
    }
    
    
//Validar
    
function Validar($usuario){
        
$sSQL="SELECT usuario, password FROM usuarios WHERE usuario='$usuario'";
        
$datos = new Datos();
        return 
$datos->TraerFila($sSQL);
    }    
}
?>
Muchas gracias

Etiquetas: fallo, funcion, html, inicio, mysql, query, sesión, variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:58.