Foros del Web » Programando para Internet » PHP »

Porblemas con script de usuarios

Estas en el tema de Porblemas con script de usuarios en el foro de PHP en Foros del Web. Woooooolas Miren me estoy creando mi propio "Authentificator" y todo va de maravillas ecepto que no puedo hacer lo de la activacion de usuario por ...
  #1 (permalink)  
Antiguo 30/01/2003, 13:03
Avatar de MSDark  
Fecha de Ingreso: noviembre-2002
Ubicación: Talca VII región
Mensajes: 337
Antigüedad: 15 años, 1 mes
Puntos: 1
Porblemas con script de usuarios

Woooooolas

Miren me estoy creando mi propio "Authentificator" y todo va de maravillas ecepto que no puedo hacer lo de la activacion de usuario por mail.

El link que envio al e-mail es el siguiente

http://www.msdark.com.ar/index.php?s...PASSqbuwdbsudb

y en la pagina que correponde a seccion=activacion pongo


(por cierto el pass esta pasado por md5 para enviarlo al mail y en la BD)


Código PHP:
include("/home2/matiasc/public_html/includes/conexdb.php");
$pass=md5($HTTP_GET_VARS["pass"]);
$sql="SELECT * FROM users WHERE nick='".$HTTP_GET_VARS["user"]."' AND pass='$pass'";
$result=mysql_query($sql);
if(
$row=mysql_fetch_array($result) )
{
$f="S";
$sql="UPDATE users SET flag='$f' WHERE id='$row[id]'";
mysql_query($sql) or die(mysql_error());
echo 
"<meta http-equiv='Refresh' content='1; URL=http://www.msdark.com.ar/index.php?seccion=principal'>";
echo 
"Activado";
}
else
{
echo 
"Error: clave incorrecta";
}
mysql_free_result($result); 
Resulta que no me da error simplemente no activa , osea se salta al else y pone Error: clave incorrecta.

Cual es el error creo yo que es en el SELECT pero no se que puede ser.

Saludos
__________________
DelirioLinux.. Software Libre y tecnología.. php también..
Saludos :arriba:
Usuario Linux #198486 y Ubuntu #12791
Gutsy Gibbon
  #2 (permalink)  
Antiguo 30/01/2003, 13:05
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 15 años, 10 meses
Puntos: 5
De nuevo un problema de signos de comparacion:

if($row=mysql_fetch_array($result) ) Mal

if($row==mysql_fetch_array($result) ) Bien


Saludos
__________________
Manoloweb
  #3 (permalink)  
Antiguo 30/01/2003, 13:09
Avatar de MSDark  
Fecha de Ingreso: noviembre-2002
Ubicación: Talca VII región
Mensajes: 337
Antigüedad: 15 años, 1 mes
Puntos: 1
Ups!!!!!!


que tonto no me di cuenta ya estoy medio mareado


jejejej

Gracias por abrirme los ojos


Saludos
__________________
DelirioLinux.. Software Libre y tecnología.. php también..
Saludos :arriba:
Usuario Linux #198486 y Ubuntu #12791
Gutsy Gibbon
  #4 (permalink)  
Antiguo 30/01/2003, 13:10
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 15 años, 10 meses
Puntos: 5
Perdon,

No lei bien tu script... yo lo solicionaría con while en lugar de if...

Código:
include("/home2/matiasc/public_html/includes/conexdb.php");
$pass=md5($HTTP_GET_VARS["pass"]);
$sql="SELECT * FROM users WHERE nick='".$HTTP_GET_VARS["user"]."' AND pass='$pass'";
$result=mysql_query($sql);
$cuantas=mysql_num_rows($result)
if ($cuantas>0)
{
$row=mysql_fetch_array($result) 
$f="S";
$sql="UPDATE users SET flag='$f' WHERE id='$row[id]'";
mysql_query($sql) or die(mysql_error());
echo "<meta http-equiv='Refresh' content='1; URL=http://www.msdark.com.ar/index.php?seccion=principal'>";
echo "Activado";
}
else
{
echo "Error: clave incorrecta";
}
mysql_free_result($result);
a ver si estoy bien, pero por ahi le buscaría yo...

Saludos
__________________
Manoloweb
  #5 (permalink)  
Antiguo 30/01/2003, 13:13
Avatar de MSDark  
Fecha de Ingreso: noviembre-2002
Ubicación: Talca VII región
Mensajes: 337
Antigüedad: 15 años, 1 mes
Puntos: 1
Ok pero con eso otro ya funciona bien gracias de todas formas


Saludos
__________________
DelirioLinux.. Software Libre y tecnología.. php también..
Saludos :arriba:
Usuario Linux #198486 y Ubuntu #12791
Gutsy Gibbon
  #6 (permalink)  
Antiguo 30/01/2003, 15:25
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,
Cita:
Mensaje Original por Manoloweb
De nuevo un problema de signos de comparacion:

if($row=mysql_fetch_array($result) ) Mal

if($row==mysql_fetch_array($result) ) Bien


Saludos
Esta bien como esta al principio, ya que no esta comparando, sino asignando a $row el valor devuelto por mysql_query().

Lo que no entiendo es lo que dices del md5. Si en el link que pones en el email el password ya esta codificado con md5, no hace falta volverlo a codificar en tu script.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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:38.