Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/11/2013, 19:11
kapi2454
 
Fecha de Ingreso: junio-2011
Mensajes: 42
Antigüedad: 13 años, 9 meses
Puntos: 0
Autenticacion de Usuario PHP, no funciona bien

Buenas gente, aca ando enfermo. Hace 3 días trato de hacer algo como esto y no me funciona. Es decepcionante la verdad. Espero si no molesto alguien pueda darme una mano.

Tengo un index tan sencillo como este

Código PHP:
<html>
<
head>
<
title>Inicio de sesión</title>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</
head>
<
body>
<
form action="control.php" method="post" id="form"><br>
Usuario: <input type="text" name="usuario" id="usuario" /><br>
Clave: <input type="password" name="clave" id="clave" /><br>
<
input type="submit" value="Entrar">
</
form>
</
body>
</
html
Luego la pagina control que tiene esto

Código PHP:
<?php
// A continuación, realizamos la conexión con nuestra base de datos en MySQL
$link mysql_connect("localhost","pointtec","04hf43p86s");
mysql_select_db("pointtec_MGP",$link) or die ("Error 1");

//El query valida si el usuario ingresado existe en la base de datos. Se utiliza la función htmlentities para evitar inyecciones SQL
$myusuario mysql_query("SELECT usuario FROM namausuarios WHERE usuario='".htmlentities($_POST["usuario"])."'") or die ("Error 2");
$nmyusuario mysql_num_rows($myusuario) or die ("Error 3");

//Si existe el usuario, validamos también la contraseña ingresada.

if($nmyusuario !=0)

{
    
$sql "select usuario from namausuarios where usuario = '".htmlentities($_POST["usuario"])."' and clave = '".md5(htmlentities($_POST["clave"]))."'";
    
$myclave mysql_query($sql,$link);
    
$nmyclave mysql_num_rows($myclave);
    
    
//Si el usuario y clave ingresado son correctos (y el usuario está activo en la BD), creamos la sesión del mismo.
    
if($nmyclave != 0)
        {
        
session_start();
        
//Guardamos dos variables de sesión que nos auxiliará para saber si se está o no “logueado” un usuario
        
$_SESSION["autentica"] = "SIP";
        
$_SESSION["usuarioactual"] = mysql_result($myclave,0,0); //nombre del usuario logueado.
        //Direccionamos a nuestra página principal del sistema.
        
echo "Contraseña correcta";
        }
        else
        {
        echo 
"contraseña incorrecta";
        }
}
else
{
echo 
"Usuario no existe";
}
mysql_close($link);
?>
En el servidor tengo la base de datos con una tabla creada que dice ser usuarios.
Los campos son usuario, clave y estado.

Si el usuario esta bien y la contraseña mal. Todo es normal
Si el usuario y clave estan bien, todo normal.
Pero si el usuario esta mal y no existe en la tabla se me muere en el "Error 3".
El codigo no sigue corriendo y no puedo hacer que salga algun error o similar, podría alguien por favor darme una manito? Gracias gente muchas gracias!!!