Comunidad de diseño web y desarrollo en internet online

Envio masivo de correos

Citar            
MensajeEscrito el 01 Abr 2007 03:34 am
Buenas, estoy tratando de crear un sistema de boletines (lista de correo) para enviar informacion a los usuarios de mi web que son aproximadamente 800 (o un poco mas).

Trate de usar la funcion mail, cuando estaba haciendo las pruebas (solo con mi correo) funciono de marabilla pero cuando lo implemente por completo con todos los correos de los usuarios simplemente no llego ningun correo y no se que debo hacer. Existe alguna funcion para enviar correos masivos o es que estoy usando mal esta funcion?

les dejo el codigo

Código :

$user = mysql_query("SELECT * FROM $tabla_users WHERE LISTA='si'"); // Query a la bdd coje los usuarios que la tienen activada
while ($us = mysql_fetch_array($user)) { $a = "$a$us[CORREO], "; $x++; }
// En este bucle "while" cojemos en la variable $a los correos de los usuarios que la tienen activada

/* Ahora, solo queda enviar a el destinatario $a, lo que querramos, usando la funciona mail(); */

$remitente = "[email protected]"; 
$list_time = time(); 
$fecha = date("d.m.Y", $list_time); 
$asunto = "Boletin de Noticias de DragonRock - $fecha -"; // Asunto del mensaje
$extra1 = "<table width='470' border='0' bgcolor='#000000' align='center'><tr><td>
<img src='http://www.dragonrock.com.ve/imagenes/boletines.jpg' align='center'><br><font color='#FFFFFF' size='2'>";
$extra = "\n\n<br><br>Para desactivar la lista de correo dirijete a tu panel de usuario de nustra web.<br></font></td></tr></table>
<br><a href='http://www.dragonrock.com.ve'>DragonRock.com.ve</a><br><a href='http://www.dragonrock.net'>DragonRock.net</a> (Pr&oacute;ximamente)"; // Esto se incluira siempre como un extra a pie del correo

// Simple Formulario para el envio de mensajes masivos, un text area i un boton de enviar
echo "<h2 align='center'>Boletin a usuarios</h2><form action='$este' method='post'>    
    <textarea name='msg' cols='30' rows='10' style='width: 100%' id='msg'>Contenido</textarea>
   <br><center><input name='Lista_Correo' type='submit' id='Send' value='Enviar'></center>
   </form>";
   

/* Enviamos el correo */   
if ($Lista_Correo) { 
$msg = $extra1.$msg.$extra; 
   mail($a,$asunto,$msg,"MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\nFrom: DragonRock <$remitente>\r\nReply-To: $remitente\r\n"); // Funcion mail();
    echo "<b>Correo enviado con exito<u>:</u></b><br>$a<br>$msg"; 
}

Por Takashi

Claber

105 de clabLevel



Genero:Masculino  

Caracas - Venezuela

firefox
Citar            
MensajeEscrito el 04 Abr 2007 04:51 am
Lo subiste a un hosting gratuito???? porque la mayoria de los hosting gratuitos vienen con el puerto SMTP bloqueado para que no puedas utilizar la funcion mail....

Por xckon

14 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Abr 2007 06:18 pm
xckon de que hablas? se supone que si esta haciendo pruebas con mail, la funcion mail esta activa.

Takashi la funcion mail no es apropiada para enviar correos masivos, lee en php.net la documentación de mail alli te hacen la recomendación para esos caso.

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 05 Abr 2007 03:09 pm
Hola.. creo que tendrás que tener en cuenta que sólo puedes enviar 250 mails por hora... asi es que puedes hacer un intervalo.. bueno . espero que compartas con nosotros la solucion de tu problema .. saludos..

Por wizardxyz

37 de clabLevel



Genero:Masculino  

Valencia - España

firefox
Citar            
MensajeEscrito el 06 Abr 2007 04:37 pm
Humnmnmn con que puedo enviar un maximo de 250 con mail no?
ya revise php.net pero no entendi muy bien, creo que hay que instalar una funcion pero no se como hacer eso, segun dice esa funcion no viene en ninguna de las librerias por defecto de php4, pero si se pueden enviar un maximo de 250 correos vere que puedo hacer... lo que no me gusta es que en las pruebas los usuarios puedan molestarse de que le lleguen varios correos solo de prueba, pero ya veremos que se le hace...
Gracias por el dato... vere si puedo hacer varios bucles de 250 cada uno o solo 200 para evitar problemas y asi les envio el correo a todos en varios ciclos... gracias, cuando termine publico mi solucion a ver si a alguien mas le funciona jejeje Gracias!!!

Por Takashi

Claber

105 de clabLevel



Genero:Masculino  

Caracas - Venezuela

firefox
Citar            
MensajeEscrito el 06 Abr 2007 06:04 pm
Creo que asi funciona pero debo verificar con los usuarios si les llego o no, a mi me llego pero al correo de la web.

Código :

if($_SESSION['vuelta'] == 0){
      $user = mysql_query("SELECT * FROM `usuario` WHERE LISTA='si' ORDER BY `IDEUSU` ASC LIMIT 0,200");
   }elseif($_SESSION['vuelta'] == 1){
      $user = mysql_query("SELECT * FROM `usuario` WHERE LISTA='si' ORDER BY `IDEUSU` ASC LIMIT 201,200");
   }elseif($_SESSION['vuelta'] == 2){
      $user = mysql_query("SELECT * FROM `usuario` WHERE LISTA='si' ORDER BY `IDEUSU` ASC LIMIT 401,200");
   }elseif($_SESSION['vuelta'] == 3){
      $user = mysql_query("SELECT * FROM `usuario` WHERE LISTA='si' ORDER BY `IDEUSU` ASC LIMIT 601,200");
   }elseif($_SESSION['vuelta'] == 4){
      $user = mysql_query("SELECT * FROM `usuario` WHERE LISTA='si' ORDER BY `IDEUSU` ASC LIMIT 801,200");
   }
 // Query a la bdd coje los usuarios
// que la tienen activada
while ($us = mysql_fetch_array($user)) { $a = "$a$us[CORREO], "; $x++; }
// En este bucle "while" cojemos en la variable $a los correos de los usuarios que la tienen activada

/* Ahora, solo queda enviar a el destinatario $a, lo que querramos, usando la funciona mail(); */

$remitente = "[email protected]"; // Correo al que se le respondera el mensaje y aparezera como remitente
$list_time = time();
$fecha = date("d.m.Y", $list_time);
$asunto = "Boletin de Noticias de DragonRock - $fecha -"; 
$extra1 = "<table width='470' border='0' bgcolor='#000000' align='center'><tr><td>
<img src='http://www.dragonrock.com.ve/imagenes/boletines.jpg' align='center'><br><font color='#FFFFFF' size='2'>";
$extra = "\n\n<br><br>Pedimos disculpas por los inconvenientes que esto pueda causar ya que son mensajes para probar el sistema de boletines de DragonRock .com.ve<br>Para desactivar la lista de correo dirijete a tu panel de usuario de nustra web.<br></font></td></tr></table>
<br><a href='http://www.dragonrock.com.ve'>DragonRock .com.ve</a><br><a href='http://www.dragonrock.net'>DragonRock.net</a> (Pr&oacute;ximamente)"; // Esto se incluira siempre como un extra a pie del correo

echo "<h2 align='center'>Boletin a usuarios</h2><form action='$este' method='post'>    
    <textarea name='msg' cols='30' rows='10' style='width: 100%' id='msg'>$msg</textarea>
   <br><center><input name='Lista_Correo' type='submit' id='Send' value='Enviar'></center>
   </form>";
   

/* Enviamos el correo */   
if ($Lista_Correo) { // Si esta la variable marcada ..
$msg = $extra1.$msg.$extra; // Cojemos el mensaje y le añadimos el $extra
  mail($remitente,$asunto,$msg,"MIME-Version: 1.0\r\nContent-type: text/html; charset=iso-8859-1\r\nFrom: DragonRock <$remitente>\r\nReply-To: $remitente\r\nBcc:$a\r\n"); // Funcion mail();
    echo "<b>Correo enviado con exito $_SESSION[vuelta]<u>:</u></b><br>$a<br>$msg"; 
   $_SESSION['vuelta'] ++;
   }else{
      $_SESSION['vuelta'] = 0;
   }


Bueno, segun yo eso funciona... en debe dar a enviar en este caso 4 veces para que vaya cargando los usuarios de 200 en 200 (en mi caso 4 veces porque son mas de 800)

Por Takashi

Claber

105 de clabLevel



Genero:Masculino  

Caracas - Venezuela

firefox
Citar            
MensajeEscrito el 08 Abr 2007 05:52 pm
Una cosa más::::: Existen Bases de datos HASH que utilizan algunos filtros que evitan spam a los correos electronicos, ten cuidado con lo que escribes.. NADA DE "VENDO VIAGRA"o "SEXO A MONTON".. esas palabras haran que los filtros envien a la bandeja de correos no deseados tus mails.. ten cuidado tambine con CALCULOS BAYESIAMOS que utilizan los filtros y que son los que hoy por hoy mas molestan a la hora de enviar mails masivos.. bueno espero que resulte.. a ver si puedo probar tu obra.:: saludos.. adios..

Por wizardxyz

37 de clabLevel



Genero:Masculino  

Valencia - España

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.