28/10/2007, 21:29
|
| | | Fecha de Ingreso: octubre-2007 Ubicación: Planeta Tierra
Mensajes: 152
Antigüedad: 17 años, 1 mes Puntos: 0 | |
Re: Envío de e-mail a múltiples destinatarios con PHP Lo último que se me ocurrió es chequear si la variable está vacía, en caso afirmativo, eliminarla a través de la función unset. Código PHP: <?php
/* contador de errores */
$contError = 0;
/* recipientes */
$direccion1 = $HTTP_POST_VARS['recordatorio1'];
$direccion2 = $HTTP_POST_VARS['recordatorio2'];
$direccion3 = $HTTP_POST_VARS['recordatorio3'];
$direccion4 = $HTTP_POST_VARS['recordatorio4'];
$direccion5 = $HTTP_POST_VARS['recordatorio5'];
$direccion6 = $HTTP_POST_VARS['recordatorio6'];
$direccion7 = $HTTP_POST_VARS['recordatorio7'];
$direccion8 = $HTTP_POST_VARS['recordatorio8'];
$direccion9 = $HTTP_POST_VARS['recordatorio9'];
$direccion10 = $HTTP_POST_VARS['recordatorio10'];
$direccion11 = $HTTP_POST_VARS['recordatorio11'];
$direccion12 = $HTTP_POST_VARS['recordatorio12'];
if (empty($direccion1))
unset($direccion1);
elseif (empty($direccion2))
unset($direccion2);
elseif (empty($direccion3))
unset($direccion3);
elseif (empty($direccion4))
unset($direccion4);
elseif (empty($direccion5))
unset($direccion5);
elseif (empty($direccion6))
unset($direccion6);
elseif (empty($direccion7))
unset($direccion7);
elseif (empty($direccion8))
unset($direccion8);
elseif (empty($direccion9))
unset($direccion9);
elseif (empty($direccion10))
unset($direccion10);
elseif (empty($direccion11))
unset($direccion11);
elseif (empty($direccion12))
unset($direccion12);
$para = "$direccion1, $direccion2, $direccion3, $direccion4, $direccion5, $direccion6, $direccion7, $direccion8, $direccion9, $direccion10, $direccion11, $direccion12";
/* arreglo de recipientes */
$to = explode(',',$para);
/* asunto */
$asunto = "Prueba mail";
/* mensaje */
$mensaje = '
<html>
<head>
<title>Prueba</title>
</head>
<body>
<p>¡Aquí están los cumpleaños que llegan en Agosto!</p>
<table>
<tr>
<th>Persona</th><th>Día</th><th>Mes</th><th>Año</th>
</tr>
<tr>
<td>Juan</td><td>3</td><td>August</td><td>1970</td>
</tr>
<tr>
<td>Sandra</td><td>17</td><td>August</td><td>1973</td>
</tr>
</table>
</body>
</html>
';
for($i=0;$i<count($to);$i++){
$cabeceras = "MIME-Version: 1.0\r\n";
$cabeceras .= "Content-type: text/html; charset=iso-8859-1\r\n";
$cabeceras .= "To: ".$to[$i]."\r\n";
$cabeceras .= "From: Departamento de cobranzas <[email protected]>\r\n";
$cabeceras .= "Bcc: [email protected]\r\n";
if(!mail($to[$i], $asunto, $mensaje, $cabeceras)){
$contError++;
//echo para ver cuantos no fueron enviados
}
}
?> Me funcionó una sola vez , lo intenté de nuevo, y los correos no llegan a los destinatarios ni al correo especificado como Bcc... Lo que quiero hacer lograr es que el e-mail se envíe solamente a los usuarios que escriba en el formulario y que el correo especificado como Bcc reciba una copia de los correos enviados solamente y no las 12 notificaciones aunque no se hayan enviado. |