Foros del Web » Programando para Internet » PHP »

Tarea temporizada

Estas en el tema de Tarea temporizada en el foro de PHP en Foros del Web. Hola amigos. Tengo un problema y quisiera saber si me pueden ayudar. Tengo una base de datos en mi sitio con los registros de mail ...
  #1 (permalink)  
Antiguo 18/09/2010, 18:40
Avatar de Cladam  
Fecha de Ingreso: marzo-2009
Ubicación: En algún lugar en mi mundo
Mensajes: 44
Antigüedad: 15 años, 1 mes
Puntos: 2
Pregunta Tarea temporizada

Hola amigos. Tengo un problema y quisiera saber si me pueden ayudar.

Tengo una base de datos en mi sitio con los registros de mail de mis usuarios. En total son 2000 aprox. Cada tanto , les envío correos con novedades del sitio y esas cosas.
Les aclaro que no es spam porque ellos al registrarse aceptan, que les envíe cada tanto información relevante.

Ahora bien, mi hosting me llamó la atención por la cantidad de mails que he enviado ultimamente, y me han dicho que puedo usar la función mail siempre y cuando envié no más de 200 mail por hora.

Aquí viene la pregunta, ¿como hago eso en PHP? se puede? algún while o break?

La verdad no se me ocurre alguna cosa y bueno, capaz que ustedes tiene la solución.

Muchas Gracias desde ya.
  #2 (permalink)  
Antiguo 18/09/2010, 19:14
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: Tarea temporizada

Podrias usar la libreria phpmailer y enviarle a todos... ya que como dices ellos aceptaron y por ende supongo que tienen en su correo agregado el tuyo y no seria spam.

Otros optan por usar un software de envio de correos... busca sobre eso aver si quizas sea tu solucion mas optima.

Suerte
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #3 (permalink)  
Antiguo 19/09/2010, 18:44
Avatar de Cladam  
Fecha de Ingreso: marzo-2009
Ubicación: En algún lugar en mi mundo
Mensajes: 44
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Tarea temporizada

Gracias master. Ya lo había pensado..pero el phpmailer, puede consultar el campo de los mail de mi db?

No hay algo sencillo como colocar un break despues de contar 200 envios y esperar una hora?
  #4 (permalink)  
Antiguo 20/09/2010, 05:59
 
Fecha de Ingreso: mayo-2008
Mensajes: 117
Antigüedad: 16 años
Puntos: 8
Respuesta: Tarea temporizada

supongo que podrias encontrar la respuesta, pero que haras cundo tengas 5000 afiliados? ...
  #5 (permalink)  
Antiguo 20/09/2010, 06:13
Avatar de Cladam  
Fecha de Ingreso: marzo-2009
Ubicación: En algún lugar en mi mundo
Mensajes: 44
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Tarea temporizada

Buena pregunta... y voy a tener que contartar el servicio de mail que me ofrecen en el hosting..jajaa.
Bueno, gracias, estube mirando en la página de phpmailer y y voy a ver como adapto la clase a mi script.
Muchas gracias!!!!
  #6 (permalink)  
Antiguo 20/09/2010, 06:56
Avatar de manuga87  
Fecha de Ingreso: febrero-2010
Ubicación: Sevilla
Mensajes: 59
Antigüedad: 14 años, 2 meses
Puntos: 6
Respuesta: Tarea temporizada

¿Que SO utiliza tu servidor o alojamiento? Si tienes linux pueeds crear una tarea programada con cron en el que cada hora envies solo as esa cantidad de personas he ir guardando el número de registro de la BD donde te quedastes.

Tendrías que currartelo, de momento es la idea que puedo darte.

Tal como te explican en otra respuesta es un solución chapuzera, ya que mientrás más personas tengas registradas vas a tardar más en enviar los correos.
  #7 (permalink)  
Antiguo 21/09/2010, 11:49
 
Fecha de Ingreso: julio-2008
Mensajes: 208
Antigüedad: 15 años, 10 meses
Puntos: 5
Respuesta: Tarea temporizada

De acuerdo con manuga87 lo mejor es una tarea programada en linuk..(un cron).
Que envie de a 50 mails (por decir algo) cada 5 minutos asi no te toma como spam tu hosting..podrias incluso utilizar una cuenta tuya de gmail especifica para esta tarea.
Saludos.
  #8 (permalink)  
Antiguo 21/09/2010, 14:56
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 3 meses
Puntos: 14
Respuesta: Tarea temporizada

Usa la funcion sleep de php:

http://www.php-hispano.net/funciones/sleep
  #9 (permalink)  
Antiguo 21/09/2010, 15:08
Avatar de masterojitos  
Fecha de Ingreso: julio-2008
Ubicación: Lima Callao Chucuito
Mensajes: 1.931
Antigüedad: 15 años, 9 meses
Puntos: 105
Respuesta: Tarea temporizada

AdrianSeg.... sugieres que ejecute su archivo y que lo haga dormir y cada tiempo envie ??
Sabes cuanto tiempo el archivo tendria que estar en ejecucion ??
__________________
Atte. MasterOjitos :ojotes:
Todo sobre Programación Web
Las ultimas tendencias en Efectos y Recursos Web: MasterOjitos Blog
  #10 (permalink)  
Antiguo 21/09/2010, 15:52
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 3 meses
Puntos: 14
Respuesta: Tarea temporizada

Solo es una idea siento mi inexperiencia...
  #11 (permalink)  
Antiguo 21/09/2010, 16:07
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Tarea temporizada

AdrianSeg no te compares con el "master" xD!
__________________
More about me...
~ @rhyudek1
~ Github
  #12 (permalink)  
Antiguo 22/09/2010, 07:33
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Tarea temporizada

falto un detector de ironía por aquí :3
__________________
More about me...
~ @rhyudek1
~ Github

Etiquetas: tarea
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 13:24.