Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Problema al registrar datos en un sistema de verificación por email

Estas en el tema de Problema al registrar datos en un sistema de verificación por email en el foro de Bases de Datos General en Foros del Web. Buenas! Soy nuevo en forosdelweb aunque he entrado mas de una vez buscando códigos php entre otras cosas. Espero que me ayudéis con un problemilla. ...
  #1 (permalink)  
Antiguo 22/11/2010, 12:18
 
Fecha de Ingreso: noviembre-2010
Mensajes: 6
Antigüedad: 13 años, 5 meses
Puntos: 0
Problema al registrar datos en un sistema de verificación por email

Buenas! Soy nuevo en forosdelweb aunque he entrado mas de una vez buscando códigos php entre otras cosas. Espero que me ayudéis con un problemilla.

Bien, la cosa es que tengo una pagina de registro (register.php) que al enviar el formulario te envia a insteruser.php que se encarga de registrar al usuario en la base de datos.
Esto va perfecto, el problema está a la hora de enviar el formulario de validación.

El email se envía perfectamente con el enlace correcto, pero el "código" automático que se genera no queda registrado en la tabla correspondiente en la base de datos. Y necesito esto para validar la cuenta.

El código es este:
Código PHP:
<?
$query
="SELECT * FROM members WHERE email='$email'";
$connection=mysql_connect($server,$dbuser,$dbpass);
$result=mysql_db_query($database,$query,$connection);
if(
mysql_num_rows($result)){
  
$regstatus="El email que ha introducido ya está en uso.";
} else { 
  
$query="INSERT INTO members (email, password, name, lastname, birthday) VALUES ('$email','$password','$name','$lastname','$birthday')";
  
$result mysql_query($query) or die(mysql_error());
  
$regstatus "Registro correcto";
  
//El error está por aquí, a la hora de registrar los datos en la tabla 'activation'
  
$code sha1(mt_rand().time().mt_rand().$server['REMOTE_ADDR'].mysql_insert_id());
  
mysql_query("INSERT INTO activation ('code', 'userid') VALUES ('".$code."', '".mysql_insert_id()."');"); 
  
//Aqui tengo las variables que componen el email. Esto está perfecto.
mail($email,$esubject,$ebody,$eheaders);
}
?>
La tabla se llama 'activation' y tiene tres campos:
- id (NT auto_increment
- code VARCHAR (50) NULL
- userid VARCHAR (5) NULL

Por favor, llevo días buscando y buscando pero nada. No encuentro el error.
Gracias de antemano.
  #2 (permalink)  
Antiguo 22/11/2010, 13:14
Avatar de santris  
Fecha de Ingreso: agosto-2009
Ubicación: Sant Feliu de Llobregat
Mensajes: 955
Antigüedad: 14 años, 8 meses
Puntos: 66
Respuesta: Problema al registrar datos en un sistema de verificación por email

Parece un problema de comillas, prueba con este code:

Código PHP:
<?php
$query
="SELECT * FROM members WHERE email='$email'";
$connection=mysql_connect($server,$dbuser,$dbpass);
$result=mysql_db_query($database,$query,$connection);
if(
mysql_num_rows($result)){
  
$regstatus="El email que ha introducido ya está en uso.";
} else { 
  
$query="INSERT INTO members (email, password, name, lastname, birthday) VALUES ('$email','$password','$name','$lastname','$birthday')";
  
$result mysql_query($query) or die(mysql_error());
  
$regstatus "Registro correcto";
  
//El error está por aquí, a la hora de registrar los datos en la tabla 'activation'
  
$code=sha1(mt_rand().time().mt_rand().$server['REMOTE_ADDR'].mysql_insert_id());
$user_id=mysql_insert_id();
mysql_query("INSERT INTO 'activation' ('code', 'userid') VALUES ('$code', $user_id");//comillas modificadas
  //Aqui tengo las variables que componen el email. Esto está perfecto.
mail($email,$esubject,$ebody,$eheaders);
}
?>
__________________
Tu álbum de cromos online!!
  #3 (permalink)  
Antiguo 22/11/2010, 13:43
 
Fecha de Ingreso: noviembre-2010
Mensajes: 6
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Problema al registrar datos en un sistema de verificación por email

Gracias por cntestar santris pero el problema persiste.
Parece ser que no hay comunicación con el archivo y la tabla 'activation', es decir, que no le llega la query.

Seguiré probando. ¿Alguien sabe a que se puede deber?
  #4 (permalink)  
Antiguo 22/11/2010, 15:24
 
Fecha de Ingreso: noviembre-2010
Mensajes: 6
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Problema al registrar datos en un sistema de verificación por email

Solucionado! Al fin...He repetido el código del primer Insert y ha funcionado.

Etiquetas: email, sitemap
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 09:54.