Como Enviar un correo electrónico automático por fecha ¡AYUDA!
Hola a todos,
Se que e estado publicando últimamente mucho y pido disculpas por eso
Trataré de ser lo más claro posible.
Tengo una tabla que almacena tanto la fecha de creación de un anuncio o post así como una fecha de vencimiento
?Como pudiera hacer para que x día o antes de 5 días del vencimiento de la fecha de vencimiento agregada en cada anuncio o post se pueda enviar un recordatorio automáticamente a el correo de cada usuario según la fecha que allá seleccionado para el vencimiento del anuncio o post que este allá agregado a la web
Se que e estado publicando últimamente mucho y pido disculpas por eso
Trataré de ser lo más claro posible.
Tengo una tabla que almacena tanto la fecha de creación de un anuncio o post así como una fecha de vencimiento
?Como pudiera hacer para que x día o antes de 5 días del vencimiento de la fecha de vencimiento agregada en cada anuncio o post se pueda enviar un recordatorio automáticamente a el correo de cada usuario según la fecha que allá seleccionado para el vencimiento del anuncio o post que este allá agregado a la web
Respuesta #1
hola! es compleja tu pregunta.. necesitas tener ademas una columna en tu tabla que marque si el usuario ya esta avisado o no.. de no ser así le llegarían correos sin parar una vez se cumpla la condición.
puedes crear una función en tu fichero funciones.php (o uno que se ejecute siempre en la navegación) y que esa función recorra con un bucle todos los registros de los posts donde la fecha de caducidad esté próxima.
por ejemplo:
:P
puedes crear una función en tu fichero funciones.php (o uno que se ejecute siempre en la navegación) y que esa función recorra con un bucle todos los registros de los posts donde la fecha de caducidad esté próxima.
por ejemplo:
<?php //función comprobar vencimiento function comprobar(){ global $conexion; $fechaactual = date('Y-m-d'); $consulta = $conexion->query("SELECT * FROM z_posts WHERE vencimiento < $fechaactual"); while ( $res = $consulta->fetch_array() ) { //enviar correo al user $el_user = $res['user']; $el_correo_user = obtener_correo($res['user']); // Importante obtener el correo mediante el nombre del user (otra función) mail($el_correo_user, 'Tu posts esta vencido', 'Tu post esta vencido, visita www.dominio.com para renovarlo'); //marcar como avisado $actualizar = $conexion->query("UPDATE z_posts SET avisado = 1 WHERE user = $el_user"); } } //ejecutar función automáticamente comprobar(); ?>como puedes ver tienes un ejemplo casi completo, solo te queda retocar, adaptar etc
:P
0
Puntos
Puntos
Por alber hace 69 meses
Administrador
Respuesta #2
alber dijo: hola! es compleja tu pregunta.. necesitas tener ademas una columna en tu tabla que marque si el usuario ya esta avisado o no.. de no ser así le llegarían correos sin parar una vez se cumpla la condición.Hola Alber gracias por tu respuesta voy a probar el ejemplo de tu respuesta
puedes crear una función en tu fichero funciones.php (o uno que se ejecute siempre en la navegación) y que esa función recorra con un bucle todos los registros de los posts donde la fecha de caducidad esté próxima.
por ejemplo:<?php //función comprobar vencimiento function comprobar(){ global $conexion; $fechaactual = date('Y-m-d'); $consulta = $conexion->query("SELECT * FROM z_posts WHERE vencimiento < $fechaactual"); while ( $res = $consulta->fetch_array() ) { //enviar correo al user $el_user = $res['user']; $el_correo_user = obtener_correo($res['user']); // Importante obtener el correo mediante el nombre del user (otra función) mail($el_correo_user, 'Tu posts esta vencido', 'Tu post esta vencido, visita www.dominio.com para renovarlo'); //marcar como avisado $actualizar = $conexion->query("UPDATE z_posts SET avisado = 1 WHERE user = $el_user"); } } //ejecutar función automáticamente comprobar(); ?>como puedes ver tienes un ejemplo casi completo, solo te queda retocar, adaptar etc
:P
Respuesta #3
De nada, mirate bien los comentarios del código y los procesos para que te hagas la idea en tu mente primero..
Una vez que tengas la lógica tienes el código, seguro que incluso mejorado!
Ánimo crack :p
Una vez que tengas la lógica tienes el código, seguro que incluso mejorado!
Ánimo crack :p
1
Puntos
Puntos
Por alber hace 69 meses
Administrador