Foros del Web » Programando para Internet » PHP »

Programacion de php para envio de email de cumpleanos

Estas en el tema de Programacion de php para envio de email de cumpleanos en el foro de PHP en Foros del Web. Estimados amigos solicito su ayuda para resolver este tema: Necesito programar en php el envio de mensajes de cumpleanos a mis amigos cuyos datos tengo ...
  #1 (permalink)  
Antiguo 25/09/2011, 12:57
 
Fecha de Ingreso: septiembre-2011
Mensajes: 8
Antigüedad: 12 años, 7 meses
Puntos: 0
De acuerdo Programacion de php para envio de email de cumpleanos

Estimados amigos solicito su ayuda para resolver este tema:

Necesito programar en php el envio de mensajes de cumpleanos a mis amigos cuyos datos tengo almacenados en mi base de datos.

Mi base de datos tiene la tabla "amigos" la cual tiene una los siguientes campos:
nombres
apellidos
email_amigos
dia_nacimiento DD
mes_nacimiento MM
ano_nacimiento AAAA
fecha_cumpleanos DD-MM

Recurro a uds como expertos en php de tal manera que me puedan ayudar con la programacion de la manera mas precisa y simple posible pues mis conocimientos en php son basicos.

Nombre del archivo: mensaje_de_cumpleanos.php


<?php

//Conexion con la db
$bd=mysql_connect("localhost","db_user_lisbeth","p ass_lisbeth") or die ("No Puedo Conectarme A La Base de Datos");

// configuramos conexion utf8 si esta configuracion no este en el server utf8_spanish_ci
mysql_query("SET NAMES 'utf8' COLLATE 'utf8_general_ci'");

//seleccion de la base de datos con la que vamos a trabajar
mysql_select_db("db_lisbeth");

$fecha_actual=strftime("%Y-%m-%d", time());

$result=mysql_query("select nombres,apellidos,fecha_cumpleanos,email_amigos from amigos WHERE $fecha_cumpleanos==$fecha_actual;");

//como salen varios datos... tenemos que recorrer el resultado y enviar los correos dentro de un while.

while($row = mysql_fetch_array($result)) {
$fecha_cumpleanos = $row["fecha_cumpleanos"];
$mail = $row["email_amigos"];

$to = $mail;
$subject = 'Feliz Cumpleaños';
$message = 'Tu amiga Lisbeth te desea un feliz cumpleaños.';
$headers = 'From: [email protected]' . "\r\n" .

mail($to, $subject, $message, $headers);
}
}



Con el tema de automatización no tengo problema pues voy a asignar una tarea al Cron Jobs que se encuentra en el panel de mi hosting para que se ejecute diariamente.

Saludos desde Perú

Lisbeth

http://sexylisbeth.spaces.live.com
  #2 (permalink)  
Antiguo 25/09/2011, 13:27
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 15 años
Puntos: 322
Respuesta: Programacion de php para envio de email de cumpleanos

Y el problema es... ¿?
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #3 (permalink)  
Antiguo 25/09/2011, 15:27
 
Fecha de Ingreso: septiembre-2011
Mensajes: 8
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Programacion de php para envio de email de cumpleanos

Sourcegeek, agradezco la observacion, bueno la consulta es que mi codigo php no funciona y quisiera me ayuden a decifrar cual es el problema.

Gracias,
  #4 (permalink)  
Antiguo 25/09/2011, 15:34
 
Fecha de Ingreso: agosto-2011
Ubicación: Viña del Mar, Chile
Mensajes: 311
Antigüedad: 12 años, 8 meses
Puntos: 50
Respuesta: Programacion de php para envio de email de cumpleanos

Cita:
Iniciado por lisbethperu Ver Mensaje
Sourcegeek, agradezco la observacion, bueno la consulta es que mi codigo php no funciona y quisiera me ayuden a decifrar cual es el problema.

Gracias,
Hola..limpiando archivos me encontré con un libro que explica cono ejemplo el saludo de cumpleaños..tengo los scripts..si quieres te los adjunto,
Saludos
  #5 (permalink)  
Antiguo 25/09/2011, 16:01
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Programacion de php para envio de email de cumpleanos

Cita:
Iniciado por lisbethperu Ver Mensaje
Sourcegeek, agradezco la observacion, bueno la consulta es que mi codigo php no funciona y quisiera me ayuden a decifrar cual es el problema.

Gracias,
El inconveniente es simple, en tu script comparas la fecha ACTUAL con la fecha de nacimiento, por lo tanto digamos 01-01-1980 nunca será igual a la fecha de ahora, por el año.

Para que te funcione debes poner el mes y el día en variables aparte y hacer la siguiente consulta:
Código SQL:
Ver original
  1. SELECT * FROM tabla WHERE MONTH(fecha_nacimiento) = '$mesActual' AND DAYOFMONTH(fecha_nacimiento) = '$diaActual'
Con eso bastará para que te devuelva los registros de los usuarios que cumplen años.
  #6 (permalink)  
Antiguo 25/09/2011, 16:58
 
Fecha de Ingreso: septiembre-2011
Mensajes: 8
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Programacion de php para envio de email de cumpleanos

Agradezco anticipadamente el apoyo y tiempo brindado.

Ronruby,

Como tengo en mi tabla los campos "dia_nacimiento" y "mes_nacimiento" entons segun tu comentario seria mejor trabajar con estos datos y no con "fecha_cumpleanos"
Si no fuera mucha molestia podrias indicarme como incluiria esa rutina y como quedaria mi codigo php.


snowmanchip, agradezco tu ofrecimiento y todo lo que fuese para ayudarme a resolver este tema bienvenido sera.

Gracias

Última edición por lisbethperu; 25/09/2011 a las 17:03
  #7 (permalink)  
Antiguo 25/09/2011, 18:56
 
Fecha de Ingreso: agosto-2011
Ubicación: Viña del Mar, Chile
Mensajes: 311
Antigüedad: 12 años, 8 meses
Puntos: 50
Respuesta: Programacion de php para envio de email de cumpleanos

Aquí están los enlaces:

scripts:

[URL="http://www.pc-cuadernos.com/wp-content/uploads/ejerciciosphp.zip"]http://www.pc-cuadernos.com/wp-content/uploads/ejerciciosphp.zip[/URL]

El Libro:
[URL="http://www.freelibros.com/2011/01/pc-cuadernos-30%C2%B0-php-y-mysql.html"]http://www.freelibros.com/2011/01/pc-cuadernos-30%C2%B0-php-y-mysql.html[/URL]

Saludos y espero te sea de ayuda,
  #8 (permalink)  
Antiguo 27/09/2011, 08:20
 
Fecha de Ingreso: septiembre-2011
Mensajes: 8
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Programacion de php para envio de email de cumpleanos

Snowmanchip, Gracias por el apoyo voy a revisar la informacion.

Amigos por favor no olviden ayudarme con mi codigo que estoy mencionando en el post anterior.

Cualquier ayuda me escriben a mi email sexylisbeth @ hotmail.com

Gracias
  #9 (permalink)  
Antiguo 27/09/2011, 08:23
 
Fecha de Ingreso: agosto-2011
Ubicación: Viña del Mar, Chile
Mensajes: 311
Antigüedad: 12 años, 8 meses
Puntos: 50
Respuesta: Programacion de php para envio de email de cumpleanos

Me gustó tu correo..jejje..hablando en serio en los archivos que te pasé sale el ejemplo explicado paso a paso y con los archivos para descarga,
saludos,
  #10 (permalink)  
Antiguo 27/09/2011, 09:02
Avatar de ginitofl  
Fecha de Ingreso: diciembre-2006
Ubicación: Lima Perú
Mensajes: 349
Antigüedad: 17 años, 4 meses
Puntos: 22
Respuesta: Programacion de php para envio de email de cumpleanos

Hola Lisbeth como tu misma has dicho seria mejor que trabajes con tus campos dia_nacimiento y mes_nacimiento tu script quedaria de esta manera:


Código PHP:
<?php
//Conexion con la db
$bd=mysql_connect("localhost","db_user_lisbeth","p ass_lisbeth") or die ("No Puedo Conectarme A La Base de Datos");

//seleccion de la base de datos con la que vamos a trabajar
mysql_select_db("db_lisbeth");

// configuramos conexion utf8 si esta configuracion no este en el server utf8_spanish_ci
mysql_query("SET NAMES 'utf8' COLLATE 'utf8_general_ci'");

//capturas el dia y mes actual
$diaactualdate("d"); 
$mesactualdate("m");

//en tu query preguntas por el dia_nacimiento y mes_nacimiento
$result=mysql_query("select nombres, apellidos, fecha_cumpleanos, email_amigos from amigos WHERE dia_nacimiento='$diaactual' and mes_nacimiento='$mesactual'");

//como salen varios datos... tenemos que recorrer el resultado y enviar los correos dentro de un while.

while($row mysql_fetch_array($result)) {
    
$fecha_cumpleanos $row['fecha_cumpleanos'];
    
$mail $row['email_amigos'];
    
$apenom $row['apellidos'] . " " $row['nombres'];

    
$to $mail;
    
$subject 'Feliz Cumpleaños' $apenom;
    
$message 'Tu amiga Lisbeth te desea un feliz cumpleaños.';
    
$headers 'From: [email protected]"\r\n" .
    
mail($to$subject$message$headers);
}
?>
Pruebalo y me cuentas.

Saludos.
  #11 (permalink)  
Antiguo 28/09/2011, 14:58
 
Fecha de Ingreso: octubre-2004
Mensajes: 768
Antigüedad: 19 años, 6 meses
Puntos: 3
Respuesta: Programacion de php para envio de email de cumpleanos

Excelente...!!!

El aporte de snowmanchip es muy bueno.

Justo estaba buscando una orientación, guía y ésto me facilitó el entendimiento.

Lo puse en práctica y me funciona perfectamente... por lo menos hasta ahora!

Saludos y muchas gracias por el aporte!
  #12 (permalink)  
Antiguo 05/10/2011, 14:07
 
Fecha de Ingreso: septiembre-2011
Mensajes: 8
Antigüedad: 12 años, 7 meses
Puntos: 0
Estimados amigos:

Snowmanchip, Ronruby, ginitofl.

Les comento que por mas que he intentado, no me funciona ninguna de las dos opciones.

Ojala me puedan ayudar debo estar haciendo algo mal.

Saludos

Estimados amigos:

Les comento que por mas que he intentado, no me funciona ninguna de las dos opciones.

Ojala me puedan ayudar debo estar haciendo algo mal.

Saludos

Última edición por GatorV; 11/10/2011 a las 08:36
  #13 (permalink)  
Antiguo 11/10/2011, 06:45
Avatar de mft
mft
 
Fecha de Ingreso: abril-2003
Ubicación: *
Mensajes: 239
Antigüedad: 21 años, 1 mes
Puntos: 4
Información Respuesta: Programacion de php para envio de email de cumpleanos

Que error te sale, o que es lo que no te sale??? No te funciona porque no aparece nada?? Podrías mencionar el error?

Saludos!
__________________
Lo que haces, determina lo que eres.
Saludos!

Etiquetas: email, mysql, programacion, tabla
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 18:32.