Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/04/2009, 20:00
Avatar de kurokishi
kurokishi
 
Fecha de Ingreso: enero-2009
Ubicación: Tenochtitlán
Mensajes: 109
Antigüedad: 15 años, 3 meses
Puntos: 1
pequeño error??

Buenas noches, pues ya hacia un tiempo que no pasaba por aqui (el trabajo demanda mucho). . .
Pero me surgio una duda con respecto a un script que estoy realizando, ya que al estoy realizando las pruebas depurar los errores que tengo en los scripts, checando uno de estos, observé que el script con el cual comparo los datos ingresados a un login con la BD pasa lo siguiente:
Si tanto el usuario y contraseña existen, deja pasar al usuario, si existe el usuario pero NO coincide la contraseña manda a un error y redirige a la pagina de inicio, pero si el usuario NO existe me manda a ninguna parte, no se a que se deba, ya que se supone que al hacer el query y con el pg_num_rows al no existir el usuario deberia mandar 0 independientemente de si coincida la contraseña o no, sin embargo no lo hace, dejo el código fuente para ver si me pueden ayudar y decir en donde se encuentra mi error.
Gracias por su ayuda.
Salu2!
Código PHP:
<?php
session_start
();
$_SESSION["existe"]='si';
If(isset(
$_POST["usuario"]) and isset($_POST["password"]))
{
    if (empty(
$_POST['usuario']) and empty($_POST['password']))
    {
    echo 
"
            <html>
                <head>
                    <link href='curso/nihongo.css' rel='stylesheet' type='text/css'>
                    <script type='text/javascript'> function redireccionar()
                            {
                                window.location='nihongo.php';
                            }  
                            setTimeout ('redireccionar()', 3500);
                        </script>
                </head>    
                    <body background='curso/menu/fondo.jpg' oncontextmenu='return false'>
                    <p class='titulo'>¡ERROR!, debe ingresar llenar todos los campos.<br>
                                Redireccionando.</p>
                    </body>
            </html>"
;
            exit;
    }
    else
    {
$usuario=$_POST["usuario"]; 
$pass=hash("sha512",$_POST["password"]);
$con=pg_connect("host=127.0.0.1 port=5432 user=japones password=j4p0n35 dbname=japones");
if (!
$con
    {
        echo 
"<html>
                <head>
                    <link href='curso/nihongo.css' rel='stylesheet' type='text/css'>
                </head>    
                    <body background='curso/menu/fondo.jpg' oncontextmenu='return false'>
                    <p class='titulo'>¡ERROR al conectarse a la base de datos.</p>
                    </body>
            </html>"
;
            exit;
    }
 else     
    {
    
$log="SELECT sistema FROM comparacion WHERE usuario='$usuario'";
    
$check=pg_query($log);
    
$show=pg_fetch_array($check);
    if (
$show['sistema']=='t')
    {
        
header ('Location: dentroer.php');
        exit;
    }
    elseif (
$show['sistema']=='f')
    {
    
$sql="SELECT c.usuario, c.nivel, i.nombres, i.nickname FROM comparacion c, id i WHERE c.usuario='$usuario' AND c.contrasena='$pass' AND c.usuario=i.usuario";
$query=pg_query($sql);

    If(
pg_num_rows($query)==1)
    {
        
$row=pg_fetch_array($query);
        
$_SESSION["usuario"]=$row[0];
        
$_SESSION["usuario"]=$row[1];
        
$_SESSION["usuario"]=$usuario;
        
$_SESSION["nivel"]=$row[1];
        
$_SESSION["nombres"]=$row[2];
        
$_SESSION["nickname"]=$row[3];
        
            
        if (
$_SESSION["nivel"]=='f')
        {
            
header ('Location: curso/nihongo_aragon.php?modulo=inicio');
            
$sist="UPDATE comparacion SET sistema='t' WHERE usuario='$usuario'";
            
$kuery=pg_query($sist);
            exit;
        }
        elseif (
$_SESSION["nivel"]=='t')
        {
            
header ('Location: curso/sensei_aragon.php?modulo=inicio');
            
$sist="UPDATE comparacion SET sistema='t' WHERE usuario='$usuario'";
            
$kuery=pg_query($sist);
            exit;
        }
    }    
        else
        {
            
header ('Location: logerror.php');
            exit;
        }
    }
    }
    }
}
?>
__________________
海賊王 に なろ!