to precisando de uma ajudar aki em um codigo php, to querendo enviar um email para varios destinatarios, esses destinatarios ja estão no banco de dados na tabela emails!
segue o codigo pra melhor entendimento:
[code]<?php
header ('Content-Type: text/html; charset=utf-8');
require('PHPMailer/class.phpmailer.php');
include ("conexao.php");
// recebendo os dados do formulario
if(isset($_POST['nome'])){
$nome = ucwords($_POST['nome']);
$recebeassunto = $_POST['assunto'];
$recebemail = $_POST['email'];
$recebemensagem = $_POST['msg'];
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->IsHTML = (true);
$mail->Host = 'webmail25.redehost.com.br';
$mail->Username = ('admin@aluisioiluminacoes.com.br');
$mail->Password = ('********');
$mail->SetFrom('admin@aluisioiluminacoes.com.br');
$mail->Port = 587;
//envia a mensagem
//corpo HTML chama a classe aki.
$mail->Body = $msg;
//Destinatarios
$mail->AddAddress('murill0smit@gmail.com');
//Assunto
//$mail->Subject = $recebeassunto;
$mail->From = "$email";
$mail->Subject = "$nome";
$mail->FromName = "$assunto";
if($mail->Send())
echo 'E-mails enviado com sucesso';
else
echo 'Erro ao enviar e-mail'.$mail->ErrorInfo;
}
?>
[/code]
alguém pode me ajudar, to usando a classe PHPMailer
Não deu erro não, ta enviando certin so que eu quero enviar para varios outros e-mail não só pra um… os emails já estão na tabela no bd,
vc pode me ajudar, como posso fazer isso?
Você pode usar a seguinte lógica. Envie um e-mail para cada da coluna X da minha tabela de contatos.
Nessa tabela você fazer uma varredura com uma estrutura de repetição e executa uma ação.
Você sabe usar o foreach e trazer os registros do banco ? É basicamente isso …
1 - pegue os dados banco;
2 - faça um for/while nesses dados;
3 - dentro do for/while coloque o codigo q ta outro post(aquele limpa os destinatarios, inclues eles novamente e envia o email)
Eu to tentando fazer assim! so que ta dando erro, da uma olhada ai;
[code]<?php
header ('Content-Type: text/html; charset=utf-8');
require('PHPMailer/class.phpmailer.php');
include ("conexao.php");
// recebendo os dados do formulario
if(isset($_POST['nome'])){
$nome = ucwords($_POST['nome']);
$recebeassunto = $_POST['assunto'];
$recebemail = $_POST['email'];
$recebemensagem = $_POST['msg'];
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->IsHTML = (true);
$mail->Host = 'webmail25.redehost.com.br';
$mail->Username = ('admin@aluisioiluminacoes.com.br');
$mail->Password = ('******');
$mail->SetFrom('admin@aluisioiluminacoes.com.br');
$mail->Port = 587;
$mail->Addbcc ($para);
//envia a mensagem
//corpo HTML chama a classe aki.
$mail->Body = utf8_decode($msg);
//LAÇO DE REPETIÇÃO PARA ENVIAR PARA DESTINTARIOS
$tabela = "emails";
// CAMPOS UTILIZADOS PARA A CONSULTA
$campos = "id, nome, email, codStatus";
// NUMERO MÁXIMO DE ENVIO
$quant = 2;
// TEMPO ENTRE UM PROCESSO DE ENVIO E OUTRO
$seg = 10;
// CONECTA COM O SERVIDOR MYSQL
mysql_connect($host,$usuario,$senha);
// SELECIONA O BANCO
mysql_select_db($banco);
// RESGATA O VALOR DA GLOBAL INICIO
$inicio = $_GET["inicio"];
// ATRIBUI O RESULTADO DA SOMA ENTRE INICIO E QUANT
$fim = $inicio + $quant;
// VERIFICA SE FOI ATRIBUIDO VALOR A VARIAVEL "INICIO"
if($inicio == ""){
// ATRIBUI O VALOR 0 CASO NAO EXISTA VALOR ATRIBUIDO
$inicio = 0;
}else{
// ATRIBUI O VALOR DA GLOBAL INICIO CASO JA EXISTA VALOR ATRIBUIDO
$inicio = $_GET["inicio"];
}
// EXECUTA A CONSULTA OU INFORMA UM ERRO CASO OCORRA
$sql = mysql_query("SELECT ". $campos ." FROM ". $tabela ." WHERE codStatus = 0 LIMIT ". $inicio .",". $quant)or die(mysql_error());
// VERIFICA SE AINDA EXISTEM EMAILS A SEREM ENVIADOS
if(mysql_num_rows($sql) == 0){
// ALTERANDO O VALOR DO CAMPO CODSTATUS PARA 0
@mysql_query("UPDATE ". $tabela ." SET codStatus = 0");
// INFORMO O TÉRMINO DO PROCESSO
echo "Fim do processo de envio!";
?>
<?
}else{
// CONTINUA EFETUANDO O ENVIO
echo "";
}
// CRIA O LAÇO REPETITIVO
while($r = mysql_fetch_array($sql)){
// ADICIONAMOS OS PADROES DE DESTINATRIO
$para = $r["email"];
//Destinatarios
//MUADAR AKI PARA TESTAR
//$mail->AddAddress('murillo_smit@hotmail.com');
//Assunto
//$mail->Subject = $recebeassunto;
$mail->From = "$email";
$mail->Subject = "$nome";
$mail->FromName = "$assunto";
if($mail->Send()){
echo "Mensagem enviada para: ". $para ." ";
//Altero o código para 1 para parar o envio do loop
@mysql_query("UPDATE". $tabela ."SET codStatus = 1 WHERE id = 1".$id);
} else {
echo "Mensagem nao enviada para: ". $para ." ";
}
}
}
?>