Ver Mensaje Individual
  #15 (permalink)  
Antiguo 28/10/2007, 21:29
Avatar de Daam
Daam
 
Fecha de Ingreso: octubre-2007
Ubicación: Planeta Tierra
Mensajes: 152
Antigüedad: 17 años, 1 mes
Puntos: 0
Pregunta 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>&iexcl;Aqu&iacute; est&aacute;n los cumplea&ntilde;os que llegan en Agosto!</p>
<table>
<tr>
  <th>Persona</th><th>D&iacute;a</th><th>Mes</th><th>A&ntilde;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.