Scientist 2 Denunciar post Postado Agosto 28, 2012 Boa noite, minha hospedagem só da possibilidade de enviar 300 emails por hora. Suponhamos que temos 700 emails no banco e precisamos enviar uma noticia a todos eles, obviamente que não posso enviar todos de 1 só vez pois a hospedagem não deixa, e também não queremos contratar um serviço de email marketing pois são muitos emails (mais de 10mil) e não precisamos disso. Então como faço para selecionar 300 emails enviar, depois selecionar + 300 e enviar e depois + 300 e enviar e assim por diante ? Isso no tempo de mais ou menos 1 hora e meia para dar o tempo de liberar + 300 emails pela hospedagem. Compartilhar este post Link para o post Compartilhar em outros sites
Tywin 7 Denunciar post Postado Agosto 28, 2012 Faz um FOR de 1 até a quantidade de e-mails. Faz um IF verificando em qual quantidade você quer parar para dar um pause. if $EmailsEnviados == 300 || $EmailsEnviados == 600 || $... 900 sleep(5410); # 5410 Segundos de Pausa ou seja 1:40 minutos. Compartilhar este post Link para o post Compartilhar em outros sites
hufersil 145 Denunciar post Postado Agosto 28, 2012 Sugiro utilizar Tarefas Agendadas (Cron). Armazene os e-mails a serem enviados em uma tabela, com um campo a mais indicando o status do envio (à enviar/enviado/cancelado); Filtre somente o que está pendente de envio, limitando ao número que seu provedor permite; Fazendo desta forma, você terá várias vantagens: Consultar a lista de e-mails Cancelar o envio de um email em particular Poder balancear melhor a carga de envio Gerenciar de forma mais eficiente a quantidade de emails / envio @braços e fique com Deus! Compartilhar este post Link para o post Compartilhar em outros sites