Foros del Web » Programando para Internet » PHP »

crear un email de confirmación

Estas en el tema de crear un email de confirmación en el foro de PHP en Foros del Web. Buenas , estoy en un proyecto web y necesito implementar un sistema de activación por email. ( Tipo loquo ). Es decir que una vez ...
  #1 (permalink)  
Antiguo 03/06/2008, 00:01
 
Fecha de Ingreso: mayo-2008
Ubicación: Barcelona
Mensajes: 249
Antigüedad: 15 años, 11 meses
Puntos: 1
crear un email de confirmación

Buenas , estoy en un proyecto web y necesito implementar un sistema de activación por email. ( Tipo loquo ). Es decir que una vez se de de alta el cliente se le mande un email que le permita activar su cuenta.

Me gustaría saber si alguien conoce un tutorial o tiene codigo útil

MUCHAS GRACIAS
  #2 (permalink)  
Antiguo 03/06/2008, 01:38
 
Fecha de Ingreso: junio-2008
Ubicación: Valencia (España)
Mensajes: 45
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: crear un email de confirmación

Hola MarcVilap

Te comento un poco la idea:

Te creas una tabla que se llame por ejemplo usuarios. En esta tabla pones los campos que creas que vas a necesitar: nombre, apellidos, email, etc. y uno que se llame validado, el cual, por defecto vale 0. Cada fila que se inserte en esta tabla creara un 0 en este campo.

Tras esto, en el email que mandas para activarlo, pones una URL en la que tengas en cuenta el email y el validado:

http://www.midominio.com/[email protected]&validado=0

Evidentemente, el email cuando te lo envian, recuperas el email con un get y validado lo pones a 0. Estos campos con un echo lo pones con el formato de la url de arriba.


Te creas la pagina activar en la que haces una consulta que recupere todos los emails de la base de datos que tengan el valor validado=0 y para cada registro compruebas que el que capturas de la URL con un get existe. Si existe, actualizas el valor de validado a 1, por ejemplo y reenvias nuevamente un email confirmando que el email ya esta activo o rediriges a una pagina que le informe al usuario que el email ya esta activado.

Esa es la idea que yo aplicaria.

Un saludo
  #3 (permalink)  
Antiguo 03/06/2008, 02:54
 
Fecha de Ingreso: enero-2007
Ubicación: Sevilla
Mensajes: 362
Antigüedad: 17 años, 2 meses
Puntos: 11
Respuesta: crear un email de confirmación

Esta bién lo que comenta josofol, pero creo que se complica un poco.

Yo crearia en la base de datos un campo llamado activar, y le pondria un valor a 0, como indica josofol, y enviaria un correo al usuario con el siguiente formato.

http://www.miweb.com/?act=456

El numero del final sería el id del usuario, con lo cual en mi pagina index del dominio, capturo por get, el id act del usuario.

Y tan solo tendria que realizar un UPDATE en la base ede datos, y pondria el campo activar del usuario 456 a 1. Y aí no tendría que recorrer toda la tabla o también evitaria la posibilidad de que se registraran varios usarios y que todavia no tengan los correos activados.

Saludos
__________________
Si te he ayudado vota en mi carma.

Servicios Web
Videojuego Online
  #4 (permalink)  
Antiguo 03/06/2008, 03:29
 
Fecha de Ingreso: junio-2008
Ubicación: Valencia (España)
Mensajes: 45
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: crear un email de confirmación

Es más preciso hacerlo por id, más que por email, pero antes de hacer el update deberias de confirmar que existe el id para que no te genere error la query del update Es decir, lo normal es que no te de nunca error, pero si alguien intenta acceder a esta web y le pone un id aleatorio en plan "voy a ver si existe este id" te generara error si no existe. De ahi que haga antes un recorrido de la bbdd. Eso si, con el id es más efectivo.

Un saludo.
  #5 (permalink)  
Antiguo 03/06/2008, 04:41
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Respuesta: crear un email de confirmación

Hola marcvilap

mirate este link es den un tutorial que exolica el proceso de envio y activacion via e-mail

http://www.forosdelweb.com/f18/aport...e-mail-564126/
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 07:38.