Temporizador

1. Temporizador

Geraldo Augusto de Oliveira Quites
geraldoquites

(usa Suse)

Enviado em 02/03/2015 - 11:11h

Olá, o script abaixo em PHP envia uma série de emails usando uma lista em mysql. Ele está funcionando perfeitamente. O Único problema é que ele dispara todos emails de uma só vez, sobrecarregando o servidor de smtp e com possível inserção no black list.
Minha pergunta é:
Tem jeito de colocar um temporizador no script? Se sim.
Como e onde faço isso?
Obrigado.

Geraldo.


<?php header("Content-Type: text/html; charset=ISO-8859-1", true);
$minha_conexao=mysql_connect('localhost','usuariol','senha') or die('Não se pode conectar com o banco de dados!');

mysql_select_db('emails',$minha_conexao);


$query_Tabela = "SELECT email FROM lista";
$Tabela = mysql_query($query_Tabela, $minha_conexao) or die(mysql_error());

$osemails="";
while ($row_Tabela=mysql_fetch_assoc($Tabela)) {
$osemails.=($row_Tabela['email'].", ");
}

$largo=strlen($osemails);
if ($largo>2)
{
//tiramos ultimos ", "
$osemails=substr($osemails,0,$largo-2);
}
else
{
echo "Nãháestinatáos!";
die();
};
echo $osemails;

$assunto='Mensagem';
$mensagem='<html>
<head> <meta http-equiv="content-Type" content="text/html; charset=iso-8859-1" />
<title>Titulo da Pagina</title>
</head>
<meta http-equiv="content-Type" content="text/html; charset=iso-8859-1" />

<body>

Mensagem
</body>
</html>';

/*
Aqui deve colocar seu email em formato HTML
*/

$envia='Título';
$remete='email';


/// Envio do email:

mail(null, $assunto, $mensagem, "MIME-Versao: 1.0
Content-type: text/html; charset=iso-8859-1
From: $envia <$remete>
Bcc: $osemails" . "\r\n") or die("Erro ao Enviar o Email");
echo "Mensagem Enviado com Sucesso!"; //

mysql_free_result($Tabela);
mysql_close($minha_conexao);
?>


  


2. Re: Temporizador

Fábio Berbert de Paula
fabio

(usa Debian)

Enviado em 02/03/2015 - 15:39h

Rapaz,

A estrutura deste script não está muito boa. Ele está enviando apenas 1 e-mail para uma lista indeterminada de destinatários. Pra começar qualquer antispam meia-boca vai bloquear a mensagem.

Sugiro que mude a estrutura para rodar tudo dentro do while ao invés de usar o while somente para gerar a lista de destinatários.

Dentro do while, envie um e-mail por vez, ou seja, um e-mail para cada destinatário. Daí no final do while você pode adicionar a seguinte linha de código, para, por exemplo, aguardar 5 segundos antes de disparar o próximo:

sleep(5); 




3. Re: Temporizador

Geraldo Augusto de Oliveira Quites
geraldoquites

(usa Suse)

Enviado em 02/03/2015 - 15:52h

Olá Fábio, muito obrigado pelo seu contato.

Pra falar a verdade percebi que esse PHP não é lá grandes coisas, mas como não sei programar nessa linguagem, foi o melhor que encontrei na internet... rs rs...
Você tem condições de ajudar-me a implementar este PHP colocando-o a mandar um email de cada vez com o temporizador?

Obrigado,

Geraldo.







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts