Foros del Web » Programando para Internet » PHP »

Confirmación de registro de usuario, donde esta el error?

Estas en el tema de Confirmación de registro de usuario, donde esta el error? en el foro de PHP en Foros del Web. Hola amigos, llevo varios dias intentando crear un formulario de registro de usuarios con su login incluido y su activacion de cuenta de usuario via ...
  #1 (permalink)  
Antiguo 13/05/2011, 06:25
 
Fecha de Ingreso: mayo-2011
Mensajes: 40
Antigüedad: 13 años
Puntos: 1
Confirmación de registro de usuario, donde esta el error?

Hola amigos, llevo varios dias intentando crear un formulario de registro de usuarios con su login incluido y su activacion de cuenta de usuario via email...pero nose donde tengo un error que no puedo encontrar

Este es el codigo para registrar los usuarios:


<?

Código PHP:
$nombreusuario $_POST['nombreusuario'];
$email $_POST['email'];
$password $_POST['password'];
$asunto "Activacion del Registro\n\n";
$id_usuario uniqid();
$mensaje "Estos son los datos de tu registro: \n";
$mensaje .= "Usuario: $nombreusuario \n";
$mensaje .= "Email: $email \n";
$mensaje .= "Contrasena: $password \n";
$mensaje .= "Para activar tu cuenta, pulsa aqui: http://localhost/registro_usuarios_php/activacion.php?id_usuario=$id_usuario";


$conectarbasedatos mysql_connect("localhost""adri""****");
mysql_select_db("PHP"$conectarbasedatos);

$comprobarusuario mysql_query("SELECT * FROM usuarios WHERE nombre_usuario = '$nombreusuario'"$conectarbasedatos);
$comprobaremail mysql_query("SELECT * FROM usuarios WHERE email = '$email'"$conectarbasedatos);
$registrarusuario "INSERT INTO usuarios(id_usuario, nombre_usuario,email,contrasena) VALUES ('$id_usuario','$nombreusuario','$email','$password')";

if(
mysql_num_rows ($comprobarusuario) > 0)
    echo 
"Este usuario ya existe <br></br> <a href=../login/iniciosesion.html>Iniciar Sesion</a>";
elseif(
mysql_num_rows ($comprobaremail) > 0)
    echo 
"Este email ya existe <br></br> <a href=../login/iniciosesion.html>Iniciar Sesion</a>";
elseif(
mysql_query($registrarusuario))
    {
    echo 
"Usuario Registrado <br></br> <a href=../login/iniciosesion.html>Iniciar Sesion</a>";
    
mail($email,$asunto,$mensaje,"FROM: Registro de Usuario");
    }
else
    echo 
"Error crítico";
    
?> 
Y este es el codigo con el que intento activar la cuenta del usuario, no me da ningun error pero el campo confirmacion no cambia de 0 a 1...alguna sugerencia?

Código PHP:
<?

$conexion 
mysql_connect("localhost","adri","1907_2007");
mysql_select_db("PHP"$conexion);

if (isset(
$_GET['id_usuario']))
    {
        
$id_usuario=$_GET['id_usuario'];
    

        
$sql "UPDATE usuarios SET confirmacion = 1 WHERE id_usuario = '$id_usuario'";
        
mysql_query($sql) or die(mysql_error());

    }
    else
    {
        echo 
"Activacion Incompleta";
    }


?>
  #2 (permalink)  
Antiguo 13/05/2011, 06:31
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Confirmación de registro de usuario, donde esta el error?

Mmm ¿De donde sale $_GET['id_usuario']?
¿Entra en el if? ¿Llega a hacer la consulta? Si hace el update ¿Que valor coge?

Hazle un echo. Quizás la variable esté vacía o no tiene el valor adecuado. Comentanos a ver.
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #3 (permalink)  
Antiguo 13/05/2011, 06:36
 
Fecha de Ingreso: mayo-2011
Mensajes: 40
Antigüedad: 13 años
Puntos: 1
Respuesta: Confirmación de registro de usuario, donde esta el error?

Cita:
Iniciado por IEKK Ver Mensaje
Mmm ¿De donde sale $_GET['id_usuario']?

Hazle un echo. Quizás esté vacío o no tiene el valor adecuado. Comentanos a ver.
Ya le hize un hecho, y si me da el numero de id del usuario....

Sale del archivo anterior, lo que hago con ese GET es recuperar la informacion de la variable
  #4 (permalink)  
Antiguo 13/05/2011, 06:39
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Confirmación de registro de usuario, donde esta el error?

Vale entonces es algo del Update.
Prueba a poner en el SET confirmacion = 1 comillas simples al valor.

Código PHP:
$sql "UPDATE usuarios SET confirmacion = '1' WHERE id_usuario = '$id_usuario'"
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #5 (permalink)  
Antiguo 13/05/2011, 06:41
 
Fecha de Ingreso: mayo-2011
Mensajes: 40
Antigüedad: 13 años
Puntos: 1
Respuesta: Confirmación de registro de usuario, donde esta el error?

Cita:
Iniciado por IEKK Ver Mensaje
Vale entonces es algo del Update.
Prueba a poner en el SET confirmacion = 1 comillas simples al valor.

Código PHP:
$sql "UPDATE usuarios SET confirmacion = '1' WHERE id_usuario = '$id_usuario'"
Increíble pero cierto, sigue sin funcionar...el campo confirmacion se me queda a 0
  #6 (permalink)  
Antiguo 13/05/2011, 06:44
 
Fecha de Ingreso: mayo-2011
Mensajes: 40
Antigüedad: 13 años
Puntos: 1
Respuesta: Confirmación de registro de usuario, donde esta el error?

Decir que el campo confirmacion es un varchar de 1 caracter, puede ser algún problema de la base de datos?
  #7 (permalink)  
Antiguo 13/05/2011, 06:46
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Confirmación de registro de usuario, donde esta el error?

Jajaja vaya hombre, pues no veo nada raro a simple vista.
¿La consulta es correcta, el campo id_usuario es el que tiene que coincidir?
¿Has mirado si en el insert ese valor es el mismo?

Pon la consulta en la administración a ver si te está devolviendo algún valor.

edit: No entiendo porque haces un varchar de 1, y más si estas usando números. Hay otros que ocuparían menos espacios y serían mas acorde al tipo de dato.
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(

Última edición por IEKK; 13/05/2011 a las 06:51
  #8 (permalink)  
Antiguo 13/05/2011, 06:52
 
Fecha de Ingreso: mayo-2011
Mensajes: 40
Antigüedad: 13 años
Puntos: 1
Respuesta: Confirmación de registro de usuario, donde esta el error?

Jajajaja vale ya está solucionado, era un fallo muy tonto.

El campo id_usuario era un varchar de 11 caracteres y la variable me estaba dando 13 caractereres, por lo tanto he editado el campo en el phpmyadmin y ya funciona.

Muchas gracias por la ayuda.

Un saludo
  #9 (permalink)  
Antiguo 13/05/2011, 07:08
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Confirmación de registro de usuario, donde esta el error?

típico despiste
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(

Etiquetas: registro, usuarios
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 11:11.