Foros del Web » Programando para Internet » PHP »

Enviar link personalizado por correo

Estas en el tema de Enviar link personalizado por correo en el foro de PHP en Foros del Web. Hola, Mi aplicación envía un correo con un link por ejemplo... http:/localhost/validatusdatos.php?id=1 esto funciona correctamente, sin embargo como ven tengo expuesto el id del usuario ...
  #1 (permalink)  
Antiguo 29/06/2017, 12:29
Avatar de malakian  
Fecha de Ingreso: septiembre-2010
Ubicación: $malakian->Colombia();
Mensajes: 469
Antigüedad: 13 años, 7 meses
Puntos: 45
Enviar link personalizado por correo

Hola,

Mi aplicación envía un correo con un link por ejemplo... http:/localhost/validatusdatos.php?id=1

esto funciona correctamente, sin embargo como ven tengo expuesto el id del usuario "?id=1", si alguien accede al enlace funciona bien, pero también alguien podría modificar el id, y usar el de otro usuario.

Como puedo darle más seguridad a este tema?

Gracias.
__________________
Guitar Loco, Desarrollador Web PHP
Sigueme: @jose1x
  #2 (permalink)  
Antiguo 29/06/2017, 12:36
Avatar de petit89  
Fecha de Ingreso: marzo-2011
Mensajes: 1.135
Antigüedad: 13 años, 1 mes
Puntos: 170
Respuesta: Enviar link personalizado por correo

codificando una palabra/numero clave que se almacene en la base de datos ejemplo:
Código PHP:
Ver original
  1. $clave = rand(1,999); //Genera un numero aleatorio que almacenas en la base de datos tambien
  2. $clave = md5($clave); //podrias hacerlo md5() para mas confusion....
  3.  
  4. $url = "http:/localhost/validatusdatos.php?id=1&cla=".$clave;

Te generará algo como http:/localhost/validatusdatos.php?id=1&cla=Nhaiwije21465kjakjiqew w

Luego de eso... para comprobarlo, pues lo logico:

Código PHP:
Ver original
  1. $clave = $_GET['cla'];
  2. $id= $_GET['id'];
  3.  
  4. $clave_en_base = $row['clave']; //extraes la clave almacenada
  5. if($clave_en_base == $clave){
  6. //TODO FUNCIONA BIEN
  7. }else{
  8. //NO SON IGUALES; NO PROCEDE NADA
  9. }
__________________
█ WebHosting / Reseller a bajo costo | Uptime Garantizado | Soporte en Español e Ingles
¿Te sirvió la respuesta? Deja un +1 (Triangulo negro al lado derecho)
  #3 (permalink)  
Antiguo 29/06/2017, 13:24
Avatar de malakian  
Fecha de Ingreso: septiembre-2010
Ubicación: $malakian->Colombia();
Mensajes: 469
Antigüedad: 13 años, 7 meses
Puntos: 45
Respuesta: Enviar link personalizado por correo

Ok, Buena idea.

Y que opinas del método md5? tengo entendido que ya no es tan seguro como antes, ya que hoy en día se cuenta con maquinas más potentes.

Gracias.
__________________
Guitar Loco, Desarrollador Web PHP
Sigueme: @jose1x
  #4 (permalink)  
Antiguo 29/06/2017, 14:47
Avatar de petit89  
Fecha de Ingreso: marzo-2011
Mensajes: 1.135
Antigüedad: 13 años, 1 mes
Puntos: 170
Respuesta: Enviar link personalizado por correo

Puede ser no tan seguro como antes... pero en este caso solo es para generar mas "confusion" solo la generación de un codigo md5 a partir de un numero rand()... no ocupas su funcionalidad directa, solo lo usas como mascara en vez de: 123 -> nkiqwjeijqweij17334nnjnasd
__________________
█ WebHosting / Reseller a bajo costo | Uptime Garantizado | Soporte en Español e Ingles
¿Te sirvió la respuesta? Deja un +1 (Triangulo negro al lado derecho)

Etiquetas: correo, link, personalizado
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 15:23.