Foros del Web » Programando para Internet » PHP »

Envío de correos mediante php

Estas en el tema de Envío de correos mediante php en el foro de PHP en Foros del Web. Buenas, sigo liado y sin solución con mi problema, les explico tengo una web o plataforma en php que necesito que cuando un proveedor añade ...
  #1 (permalink)  
Antiguo 31/01/2015, 14:13
Avatar de fieroso  
Fecha de Ingreso: diciembre-2009
Mensajes: 127
Antigüedad: 14 años, 4 meses
Puntos: 1
Envío de correos mediante php

Buenas, sigo liado y sin solución con mi problema, les explico tengo una web o plataforma en php que necesito que cuando un proveedor añade un artículo a todos sus clientes les llegue un correo avisando de esto por lo que no necesito ningún programa ni script aparte para envío masivo.

Actualmente lo tengo hecho con la clase phpmailer y la verdad que no es la solución en cuanto a tiempo porque tarda muchísmo en crear el array que esa clase crea con todos los correos para cuando está creado ya lo envía al servidor smtp que en eso no tengo problemas es un smtp propio sin limitaciones.

El problema es que ejemplo para un proveedor que tiene 400 clientes la clase phpmailer se puede tirar 20 minutos creando dicho array que usa la clase phpmailer.

Por lo que me gustaría saber un métido más efectivo para hacer este tipo de envíos ya que dispongo de smtp propio. Me han hablado de PEAR mail pero nose si es la solución porque me consta de sistemas que en segundos lanzan varios cientos de correos.

Muchas Gracias a quién me pueda aportar algo de luz o alguna experiencia al respecto.
__________________
Me gusta la programación y los retos
  #2 (permalink)  
Antiguo 02/02/2015, 02:35
Avatar de fieroso  
Fecha de Ingreso: diciembre-2009
Mensajes: 127
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: Envío de correos mediante php

¿Nadie tiene una pequeña idea?
__________________
Me gusta la programación y los retos
  #3 (permalink)  
Antiguo 02/02/2015, 02:59
Avatar de garciasanchezdani  
Fecha de Ingreso: noviembre-2011
Mensajes: 429
Antigüedad: 12 años, 5 meses
Puntos: 51
Respuesta: Envío de correos mediante php

Hola @fieroso , buenos días, yo también he lidiado con este tipo de problemas, cuando se envía un email a muchos usuarios...me pasaba exactamene lo mismo....cada vez que enviaba a 300 o más, el navegador se me quedaba pillado, y finalmente me daba un timeout (error por tiempo máximo de ejecución). Pero era más grave de lo que parecía, porque me pasaba mucho que se enviaban los mails repetidos, es decir, a cada usuario le podía llegar 2 o 3 veces el mismo email...y esto, bajo mi punto de vista, daba una malísima impresión...

Después de investigar, encontré una solución estable y fiable, que fue ejecutar este tipo de procesos php desde un cron del servidor. Aquí tienes más info:

http://programacion.net/articulo/eje...n_con_curl_302

Con una línea, le dices al cron que ejecute un fichero php, así de simple. Ese fichero php, ya obtendrá todos los usuarios que sea, y enviará el email. De esta manera, te aseguro que no vas a tener problemas.

Luego ya tienes que buscar la mejor forma de hacerlo...
En tu caso, lo que yo haría, sería programar ese cron, para que se ejecute cada x tiempo, y el script php lo que haría sería obtener todos los proveedores, y para cada proveedor, comprobar si hay un artículo nuevo, si hay, enviar un correo a todos los clientes de ese proveedor...algo así podrías hacer...

Saludos :)
__________________
Diseño Web Jaén
  #4 (permalink)  
Antiguo 02/02/2015, 11:16
Avatar de fieroso  
Fecha de Ingreso: diciembre-2009
Mensajes: 127
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: Envío de correos mediante php

Gracias, mi problema en concreto no es ese error, ese error lo tengo controlado aumento el timeout general y sino en el mismo while que utilizo para sacar los correos lo aumento y me ayudo de una variable para controlar los errores, yo así he llegado a enviar hasta 800 y sin error sólo el problema del tiempo.

Lo que busco es una alternativa más rápida a la clase phpmailer
__________________
Me gusta la programación y los retos
  #5 (permalink)  
Antiguo 05/02/2015, 03:47
Avatar de fieroso  
Fecha de Ingreso: diciembre-2009
Mensajes: 127
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: Envío de correos mediante php

Bueno sigo dando vueltas pero no se me hace la luz a la forma de solucionar esto, pero veo que nadie le surgió este problema.
__________________
Me gusta la programación y los retos
  #6 (permalink)  
Antiguo 24/03/2015, 14:11
 
Fecha de Ingreso: octubre-2005
Mensajes: 13
Antigüedad: 18 años, 6 meses
Puntos: 0
Respuesta: Envío de correos mediante php

Bueno yo solucione mi problema directamente cambiando mi php.ini en el servidor .

Ahora el problema que tengo es cuando verifico la existencia de un correo my servidor me dice "Conection timeout"

¿alguien sabe en el php.ini donde se modifica el tiempo de espera de respuesta en una consulta smtp?

Desde ya gracias
  #7 (permalink)  
Antiguo 25/03/2015, 03:49
Avatar de lauser
Moderator Unix/Linux
 
Fecha de Ingreso: julio-2013
Ubicación: Odessa (Ukrania)
Mensajes: 3.278
Antigüedad: 10 años, 9 meses
Puntos: 401
Respuesta: Envío de correos mediante php

Cita:
Iniciado por gontrannoble Ver Mensaje
Bueno yo solucione mi problema directamente cambiando mi php.ini en el servidor .

Ahora el problema que tengo es cuando verifico la existencia de un correo my servidor me dice "Conection timeout"

¿alguien sabe en el php.ini donde se modifica el tiempo de espera de respuesta en una consulta smtp?

Desde ya gracias
Modifica o añade max_execution_time en el php.ini.
Echa un vistazo al manual oficial.
__________________
Los usuarios que te responden, lo hacen altruistamente y sin ánimo de lucro con el único fin de ayudarte. Se paciente y agradecido.
-SOLOLINUX-

Etiquetas: correos, mediante
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:39.