Ver Mensaje Individual
  #4 (permalink)  
Antiguo 21/06/2009, 08:04
Avatar de gjx2
gjx2
 
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 16 años, 7 meses
Puntos: 139
Respuesta: Problema de Login

Solucion

Donde estava el problema ?
Pues en esta linea

se supone que la variable $pass esta vacia
y puesto a eso se hace la consulta con datos vacios
Es obvio que no va a devolver ningun resultado
por lo que la variable $result['password'] tambien estara vacia
en ese caso las dos son iguales y el sistema te da el acceso.
if($result['password']==$pass)


Solucion

Solo me concede el acceso si la consulta arroja datos.
if( mysql_num_rows($sql))



Código PHP:
<?php session_start(); 
if (isset(
$_SESSION['usuario'])) 
    { 
        echo 
"ya inicio sesion redireccionando"
        echo 
"<meta http-equiv=Refresh content=3;url=calis.php>"
    } 
else  { 

//verifico si existe o no la variable log para mostrar el Formulario 

if(!isset($_POST['log'])){ 

//imprimo el codigo HTML 

echo "<font face='papyrus'>"
echo 
"<center>"
echo 
"<br><br><br><br>"
echo 
"<table bgcolor='lightgreen' align='center' border='3' width='300'>"
echo 
"<tr><th>Login</th></tr>"
echo 
"<tr>"
echo 
"<form action='index.php' method='post'>"
echo 
"<tr>"
echo 
"<tr><th>Username:<input type='text' name='log'></th></tr>"
echo 
"<tr><th>Password:<input type='password' name='pass'></th></tr>"
echo 
"<tr><th><input type='submit' value='Enviar' name='enviar'><input type='reset' value='Cancelar'></th></tr>"
echo 
"</tr>"
echo 
"</form>"


echo 
"</table>"
echo 
"</font>"





else { 
        
$dbn=""
        
$tabla="usuarios"
        
$conexion=mysql_connect("localhost","root","") or die (mysql_error()); 
        
$db=mysql_select_db($dbn,$conexion) or die (mysql_error()); 

    
        
$log=$_POST['log']; 
        
$pass=$_POST['pass']; 

        
$sql mysql_query("select * from usuarios where username='$log' and password='$pass'"); 
        
        
        
$result mysql_fetch_array($sql); 

if( 
mysql_num_rows($sql)) 
    { 
        echo 
"Login Correcto REDIRECCIONANDO"

        
// Despues hay ke setear la cookie 
        
$_SESSION['usuario']=$log
        
$_SESSION['pass']=$pass
       echo 
"<meta http-equiv=Refresh content=3;url=calis.php>"

    } 
else 
    { 
    unset(
$_POST);
 echo 
"Login Incorrecto"
    echo 
"<meta http-equiv=Refresh content=1;url=index.php>"
   
    } 


?>