05/10/2008, 19:59
|
| | | Fecha de Ingreso: enero-2007 Ubicación: Caracas, Venezuela
Mensajes: 277
Antigüedad: 17 años, 3 meses Puntos: 3 | |
Respuesta: Modificar codigo para lista de correo simple Cita:
Iniciado por yrduk Se me ocurre que podrías usar límites en al consulta, como si fuera una paginación.
Algo así: Código PHP: <?php //Conexion a la base de datos include("config.php"); require("class.phpmailer.php"); $mail = new PHPMailer(); $mail->Host = "smtp.1and1.com"; $mail->From = "[email protected]"; $mail->FromName = "List Manager"; $mail->Subject = "Nuevo Servicio"; $registros = 10; // enviará 10 emails por cada recarga. Modifícalo a tu gusto :P $_GET[pagina] = $_GET[pagina]; if (!$_GET[pagina]) { $inicio = 0; $pagina = 1; } else { $inicio = ($_GET[pagina] - 1) * $registros; } $result_ = mysql_query("SELECT nombres, email FROM clientes"); $total_registros = mysql_num_rows($result_); $total_paginas = ceil($total_registros / $registros); $result = mysql_query("SELECT nombres, email FROM clientes LIMIT $inicio, $registros"); while ($row = mysql_fetch_array($result)) { // HTML body $body = "Hola <strong>".$row["nombres"]."</strong>, "; $body.= "<p>Les comunicamos el nuevo servicio... <p>"; $body.= "<em>List manager</em>"; // Text body $text = "Hola ".$row["nombres"].", \n\n"; $text.= "Les comunicamos el nuevo servicio...\n\n"; $text.= "List manager"; // Configurar Email $mail->Body = $body; $mail->AltBody = $text; $mail->AddAddress($row["email"], $row["nombres"]); // Enviar el email if(!$mail->Send()) { echo "Error al enviar a: " . $row["email"] . "<br>"; } $mail->ClearAddresses(); } ?> <?php if($total_paginas >= $_GET[pagina]) { ?> <script type="text/javascript">location.href('');</script> <?php } else { echo "<h1>Boletín enviado!</h1>"; } ?>
No estoy 100% seguro de que sirva, ya que no he probado.
Pruébalo tu, y cuéntanos si funcionó |