Estás en: Mailing : Envío del boletín
Se envía el boletín a todos aquellos a los que han confirmado la suscripción y tienen el valor "activo" a 1.
<?php include ("includes/funciones.php"); // ----------------------------- DATOS DE SMTP Y CUENTA DE ENVÍO ------------------------------- // primero hay que incluir la clase phpmailer para poder instanciar //un objeto de la misma require ("includes/class.phpmailer.php"); //instanciamos un objeto de la clase phpmailer al que llamamos //por ejemplo mail $mail=new phpmailer(); //Definimos las propiedades y llamamos a los métodos //correspondientes del objeto mail //Con PluginDir le indicamos a la clase phpmailer donde se //encuentra la clase smtp que como he comentado al principio de //este ejemplo va a estar en el subdirectorio includes $mail->PluginDir = "includes/"; //Con la propiedad Mailer le indicamos que vamos a usar un //servidor smtp $mail->Mailer = "smtp"; //Asignamos a Host el nombre de nuestro servidor smtp $mail->Host = "smtp.areafor.com"; //Le indicamos que el servidor smtp requiere autenticación $mail->SMTPAuth = true; //Le decimos cual es nuestro nombre de usuario y password $mail->Username = "area0106@areafor.com"; $mail->Password = "unouno"; //Indicamos cual es nuestra dirección de correo y el nombre que //queremos que vea el usuario que lee nuestro correo $mail->From = "area1006@areafor.com"; $mail->FromName = "Mónica PHP"; //el valor por defecto 10 de Timeout es un poco escaso dado que voy a usar //una cuenta gratuita, por tanto lo pongo a 30 $mail->Timeout=30; // --------------------------- CONEXION A LA BASE DE DATOS ----------------------- // Conexión a la base de datos (servidor, usuario, contraseña) abrir_conexion ("localhost", "monica", "php80", "emailing"); echo $sql="SELECT * FROM interesados WHERE activo=1"; $resultado=mysql_query($sql); if ($resultado) { while ($fila=mysql_fetch_array ($resultado)) { // ----------------------------- DATOS DEL MENSAJE ------------------------------- //Indicamos cual es la dirección de destino del correo $mail->AddAddress($fila['email'], $fila['nombre']); //Asignamos asunto y cuerpo del mensaje //El cuerpo del mensaje lo ponemos en formato html, haciendo //que se vea en negrita $mail->Subject = "Boletín de Mayo para 2 direcciones"; $mail->Body = 'Datos del boletín. Si quiere darse de baja del boletín pulse <a href="http://localhost/web/Curso_PHP_Monica/_EJERCICIOS/06_Emails/05%20Mailing/baja_boletin.php?email='.$fila['email'].'&nombre='.$fila['nombre'].'">aquí</a> '; //Definimos AltBody por si el destinatario del correo no admite email con formato html $mail->AltBody = "AAAAAAAAAAAAAAA"; //Decimos que el email va a ser tipo HTML $mail->IsHTML(true); //se envia el mensaje, si no ha habido problemas //la variable $exito tendra el valor true if ($mail->Send()) { echo "Envío correcto para ".$fila['email']; }else { echo "Error".$mail->ErrorInfo; // La propiedad errorinfo contiene el error } $mail->ClearAddresses(); //Borra la dirección que se ha metido en el array // Si no se elimina, la segunda vez, contendrá 2 direcciones, y por lo tanto, //enviará el email a los 2 } //while }else { echo mysql_error(); } mysql_close(); // Se cierra la conexión. Conviene cerrarlas para que el servidor no se sature ?>