Foros del Web » Programando para Internet » PHP »

¿Unir dos operadores de comparación mediante uno lógico?

Estas en el tema de ¿Unir dos operadores de comparación mediante uno lógico? en el foro de PHP en Foros del Web. Hola! Soy nuevo por aquí y ando haciendo un sistema de usuarios en php para aprender. Tengo dos valores: usuario y contraseña. Pues bien, cuando ...
  #1 (permalink)  
Antiguo 11/07/2011, 01:54
 
Fecha de Ingreso: julio-2011
Ubicación: Murcia
Mensajes: 19
Antigüedad: 12 años, 9 meses
Puntos: 0
¿Unir dos operadores de comparación mediante uno lógico?

Hola!

Soy nuevo por aquí y ando haciendo un sistema de usuarios en php para aprender.
Tengo dos valores: usuario y contraseña.

Pues bien, cuando los mando en un formulario a un php el condicional if solo me reconoce uno de los valores.

Si por ejemplo pongo bien la contraseña y mal el nombre de usuario sale correcto, pero si pongo mal la contraseña y bien el usuario me sale correcto.

¿Sabeis como puedo solucionarlo?
Perdón si es básico

Código PHP:
<?php
$usser 
"peter griffin";
$pass "cacafuti";
if ((
$_GET["pas"] != $pass) && ($_GET["user"] != $usser ))
{
echo 
"Los datos introducidos son incorrectos, intentalo de nuevo.";
}
else
{
echo 
"Datos correctos.";
}
?>
Saludos Iván.
  #2 (permalink)  
Antiguo 11/07/2011, 02:55
Avatar de aniMAYtions  
Fecha de Ingreso: diciembre-2007
Ubicación: Granada
Mensajes: 519
Antigüedad: 16 años, 4 meses
Puntos: 2
Respuesta: ¿Unir dos operadores de comparación mediante uno lógico?

Hola ivanicop.

Verás, estás diciéndole que te de incorrecto si ambas variables están mal. El && es para eso.
Por qué no pones mejor
Código PHP:
if(($_GET["pas"] == $pass) && ($_GET["user"] == $usser ))

      echo 
"Datos correctos."

else
      echo 
"Datos incorrectos."
Así le dices que tienen que ser las 2 variables correctas.

También puedes hacer
Código PHP:
if(($_GET["pas"] != $pass) || ($_GET["user"] != $usser ))

      echo 
"Datos incorrectos."

else
      echo 
"Datos correctos."
El or(||) evalua que alguna de las 2 variables sea incorrecta. Pero si lo son las 2 tiene el mismo efecto.

Saludos!!
  #3 (permalink)  
Antiguo 11/07/2011, 03:12
 
Fecha de Ingreso: julio-2011
Ubicación: Murcia
Mensajes: 19
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: ¿Unir dos operadores de comparación mediante uno lógico?

Muchas gracias, creo que me revisaré los operadores :D

Te dejo un +1 ;)

Etiquetas: mediante, operadores, formulario
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 05:32.