Foros del Web » Programando para Internet » PHP »

Error en mi código

Estas en el tema de Error en mi código en el foro de PHP en Foros del Web. Busco que un script valide el id del usuario contra el id que corresponde al password. Si son el mismo se le permita proceder, si ...
  #1 (permalink)  
Antiguo 30/03/2007, 10:30
 
Fecha de Ingreso: marzo-2007
Ubicación: Chihuahua
Mensajes: 5
Antigüedad: 17 años, 1 mes
Puntos: 0
Error en mi código

Busco que un script valide el id del usuario contra el id que corresponde al password. Si son el mismo se le permita proceder, si no, rechazarlo con un sutil !GET OFF! :P
Este es mi código hasta ahora pero solo me devuelve !GET OFF!

***********************************************


$clave=$_POST[clave]; //datos recogidos del login
$password=$_POST[password]; //datos recogidos del login

$Password=mysql_query("SELECT id FROM loquesea WHERE 'clave=$clave'"); //Es válido 'clave=$clave' ?
$resultadoPSWD=mysql_num_rows($Password); //Si existe debe darme el contenido del campo id

$Clave=mysql_query("SELECT id FROM loquesea WHERE 'password=$password'"); //Se vale 'password=$password'?
$resultadoCLV=mysql_num_rows($Clave); //Si existe debe darme el contenido del campo id

echo ($resultadoPSWD);
echo ($resultadoCLV);
if($resultadoPSW=$resultadoCLV) //Aqui se supone debe comparar id contra id y luego imprimir
{
echo("<p>"."Acceso aprobado para"." ". $clave."</p>");
}
else
{
echo("GET OFF");
}

**********************************************

Este código me imprime 0 para $resultadoPSWD, 0 para $resultadoCLV y finalmente GET OFF!.
Es decir, no le hallo cuadratura a este círculo.
help !
:(
  #2 (permalink)  
Antiguo 30/03/2007, 10:35
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Error en mi código

Hola vael00. Bienvenido al foro.

Estás usando el operador de igualdad en lugar del de comparación:

if($resultadoPSW==$resultadoCLV)

Saludos,
  #3 (permalink)  
Antiguo 30/03/2007, 10:36
 
Fecha de Ingreso: diciembre-2001
Ubicación: Asuncion
Mensajes: 143
Antigüedad: 22 años, 4 meses
Puntos: 1
Re: Error en mi código

Para comprar se usa dos signos == (es igual).
Código PHP:
if($resultadoPSW==$resultadoCLV//Aqui se supone debe comparar id contra id y luego imprimir 
  #4 (permalink)  
Antiguo 30/03/2007, 10:56
 
Fecha de Ingreso: marzo-2007
Ubicación: Chihuahua
Mensajes: 5
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Error en mi código

Gracias por responder !

ya corregí ese detalle del "==" en vez del "=" (mea culpa, hehe).
Ahora siempre me da aprobado sin importar que le escriba al loguearse.
:(

Como lo corrijo? O existe alguna otra manera de hacer lo mismo con otro script?
Gracias
  #5 (permalink)  
Antiguo 30/03/2007, 11:46
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Re: Error en mi código

Hola vael00, para empezar:
Cita:
$resultadoPSWD=mysql_num_rows($Password); //Si existe debe darme el contenido del campo id
...
$resultadoCLV=mysql_num_rows($Clave); //Si existe debe darme el contenido del campo id
mysql_num_rows devuelve el numero de filas, por lo tanto te devuelve 0 (claro si no hubo conisidencias).

Ahora si quieres obtener el valor del campo 'id'
puedes utilizar mysql_result o mysql_fetch_array.

Simplifique tu codigo de la siguiente manera, haber si te sirve:
Código PHP:
$clave=$_POST[clave]; //datos recogidos del login
$password=$_POST[password]; //datos recogidos del login

$resul=mysql_query("SELECT id FROM loquesea WHERE 'clave=$clave' AND 'password=$password'"); 
$num_reg=mysql_num_rows($resul); //devuelve el numero de filas

if($num_reg != 0//si es diferente de cero es por que existe el usuario
{
echo(
"<p>"."Acceso aprobado para"." "$clave."</p>");
}
else
{
echo(
"GET OFF");

Saludos
__________________

  #6 (permalink)  
Antiguo 30/03/2007, 12:29
 
Fecha de Ingreso: marzo-2007
Ubicación: Chihuahua
Mensajes: 5
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Error en mi código

:(
Me sigue dando GET OFF! sin importar que datos le escriba.

Probé incluso cambiando la linea donde aparece if($num_reg !=0) para quedar como:

if(!$num_reg==0) también probé usar if($num_reg!==0) y sucede lo mismo... siempre me retorna GET OFF !

también probé dandole valores directos a
$clave=028
$password=12345

y sucede lo mismo... :(
cada vez entiendo menos...

O existe utra manera de hacer lo mismo?
  #7 (permalink)  
Antiguo 30/03/2007, 12:56
Avatar de atlante  
Fecha de Ingreso: julio-2002
Ubicación: Lima
Mensajes: 140
Antigüedad: 21 años, 9 meses
Puntos: 0
Re: Error en mi código

Hola, reemplaza el SQL por lo siguiente :

Código PHP:
"SELECT id FROM loquesea WHERE clave='".$clave."' AND password='".$password."'" 
Saludos.
__________________
If you look, If you really read between the lines, You will see...
  #8 (permalink)  
Antiguo 30/03/2007, 13:06
 
Fecha de Ingreso: marzo-2007
Ubicación: Chihuahua
Mensajes: 5
Antigüedad: 17 años, 1 mes
Puntos: 0
De acuerdo Re: Error en mi código

YES!!!

Finalmente corre !

Gracias a todos
:)
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 21:47.