Hola, me ha pasado una cosa rarísima. Tengo un boletín automático que se envía a una lista de suscriptores que se saca de una base de datos. Siempre ha funcionado a la perfección, pero en el email de hoy ha cogido los 3 últimos emails de la lista y los ha puesto dentro del CUERPO DEL MENSAJE
Yo me he quedado alucinada!! Quería saber si hay algún límite de destinatarios o algo... o si a alguien le ha sucedido lo mismo.. Lo único que cambié es la sentencia SQL para recoger los emails, pero ya se envió otro email con esta nueva sentencia y funcionó ok.
Os dejo el código:
Código PHP:
<?php
$destinatarios = mysqli_query ($conexion, "SELECT DISTINCT(e.email) FROM (SELECT email from destinatarios_suscripcion where confirmado = 1 union all select email from contactos_personas where socio = 1 or padrino = 1) e") or die(mysqli_error());
//asunto del email
$subject=$titulo;
//Cuerpodelmensaje
$mensaje = '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//ES" "http://www.w3.org/TR/html4/loose.dtd">
<html>
PLANTILLA EMAIL
</html>';
//destinatarios
while($row_destinatarios = mysqli_fetch_assoc($destinatarios)) {
$email.= $row_destinatarios['email']. ", ";
}
//cabecera del mensaje
// para enviar un mail html la cabecera debe fijarse.
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= "From: Asociación Almanimal <[email protected]>\r\n";
$headers .="Bcc: ".$email."\r\n";
echo "ahora enviamos email";
//Enviamos el mensaje
if(mail("",$subject,$mensaje,$headers)){
echo " su mensaje fue enviado";
//$aviso="Su mensaje fue enviado";
}else{
echo "error al enviar";
//$aviso="Error al enviar";
}
?>
Las direcciones de correo han salido justo encima del cuadro que se empieza a pintar de otro color en el email.