Foros del Web » Programando para Internet » PHP »

Problema con estructura if

Estas en el tema de Problema con estructura if en el foro de PHP en Foros del Web. Hola a todos, tengo un problema que me esta sacando la cabeza!! Código PHP: $nick  =  $_POST [ 'nick' ]; $pass  =  $_POST [ 'pass' ...
  #1 (permalink)  
Antiguo 15/02/2010, 08:53
Avatar de manumaf  
Fecha de Ingreso: mayo-2007
Ubicación: Argentina
Mensajes: 854
Antigüedad: 17 años
Puntos: 6
Problema con estructura if

Hola a todos, tengo un problema que me esta sacando la cabeza!!

Código PHP:
$nick $_POST['nick'];
$pass $_POST['pass'];

$sql "SELECT pass, usuario FROM usuarios WHERE usuario ='$nick'";
$resultado mysql_query($sql,$descriptor);

if(
$fila mysql_fetch_array($resultado)){

    if(
$fila["pass"] == $pass) {
    
        
$_SESSION['nick'] = $nick;        
        
    } else {
    
echo 
"Datos incorrectos";
        
    }

El codigo es para un simple reconocimiento de usuarios, si los datos son correctos funciona perfecto pero si el nombre o la contraseña son erroneos el script no entra en el "else" osea no imprime "Datos incorrectos". Que pasa?


Muchas gracias de antemano!
  #2 (permalink)  
Antiguo 15/02/2010, 09:01
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema con estructura if

lo que sucede es que tienes el else dentro del primer bloque del if(), debes sacarlo de ahí y ponerlo al nivel... fuera y a un lado de ese primer bloque if()

en si, no es un problema de programación.... es mas bien conceptual ;)
Código PHP:
if (/* ...*/)
{
  if (
/* ... */// ...
}
else
{
  
// ...

__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 15/02/2010, 09:12
Avatar de manumaf  
Fecha de Ingreso: mayo-2007
Ubicación: Argentina
Mensajes: 854
Antigüedad: 17 años
Puntos: 6
Respuesta: Problema con estructura if

Muchisimas gracias :) deve ser tanto trabajar que no me anda bien la cabeza jaja
  #4 (permalink)  
Antiguo 15/02/2010, 09:12
 
Fecha de Ingreso: febrero-2010
Mensajes: 818
Antigüedad: 14 años, 2 meses
Puntos: 55
Respuesta: Problema con estructura if

te falta otro } antes del else
  #5 (permalink)  
Antiguo 15/02/2010, 09:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema con estructura if

Cita:
Iniciado por manumaf Ver Mensaje
No entiendo, el ejemplo que me diste es como yo tengo el codigo, como me tendria que quedar el codigo?
mentira... tu código esta así
Código PHP:
if (/* ...*/)
{
  if (
/* ... */// ...
  
else
  {
    
// ...
  
}

¿si notas las diferencias??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 15/02/2010, 09:19
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 6 meses
Puntos: 65
Respuesta: Problema con estructura if

Ademas (intuyo) que el nombre de usuario debe ser unico en tu tabla... Entonces si te fijas, el 1er if lo tenes demas (ya que el resultado es unico), y tu consulta esta incompleta... Podrias hacer esto:

Código PHP:
$nick mysql_real_escape_string($_POST['nick']); 
$pass mysql_real_escape_string($_POST['pass']); 

$sql "SELECT pass, usuario FROM usuarios WHERE usuario ='$nick' AND pass = '$pass';"
$resultado mysql_query($sql,$descriptor); 
$cantidad mysql_num_rows($resultado);

if(
$cantidad == 1)){ 

        
$fila mysql_fetch_array($resultado);

        
$_SESSION['nick'] = $fila['usuario'];
        
}else{

     echo 
"Datos incorrectos";


__________________
HV Studio
Diseño y desarrollo web
  #7 (permalink)  
Antiguo 15/02/2010, 20:01
Avatar de manumaf  
Fecha de Ingreso: mayo-2007
Ubicación: Argentina
Mensajes: 854
Antigüedad: 17 años
Puntos: 6
Respuesta: Problema con estructura if

Muchísimas gracias a los 2 :)

Etiquetas: estructura
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 23:59.