Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Bruno Conte

Enviar 2 emails com conteudo diferente com phpmailer

Recommended Posts

pessoal uso o phpmailer para enviar os pedidos feitos em meu sistema.

me surgiu hoje a necessidade de quando o pedido for com pagamento em boleto enviar outro email com o boleto, e os 2 são enviados de emails diferentes tambem.

minha função hoje e assim:

require_once('phpMailer/class.phpmailer.php');

$mail = new PHPMailer(); //instancia a classe
$mail->IsMail();//define função
//autenticação
$mail->Host = 'mail.teste.com.br';
$mail->SMTPAuth = true;
$mail->Username = 'teste@teste.com.br';
$mail->Password = 'envioteste';
$mail->Port = '25';
$mail->IsHTML(true);
$mail->Subject = utf8_decode("Enviando Arquivo ENP!");//assunto do email
$mail->From = "teste@teste.com.br";//email do remetente
$mail->FromName ='Envio';//nome do remetente
$mail->Body = utf8_decode("Arquivo ENP enviado!");
$mail->AddAddress($emailuser);//email do destinatario
$mail->AddAttachment("pdfs/$cli-$vetor[id].pdf");//anexa o arquivo
$verifica = $mail->Send();//envia o email
if($verifica){
//echo "Enviou";
}
else{
//echo "Não enviou!" . $mail->ErrorInfo;
}

hoje já envio o pdf ok, so que como eu faria outro email?

Compartilhar este post


Link para o post
Compartilhar em outros sites

se for o que eu entendi(ele sempre envia esse arquivo ENP e se for boleto deve enviar outro email) um IF resolve o seu problema

crie um IF no final desse cósigo assim

só alterar oque precisa agora

IF($boleto == true)//n esqueça de mandar uma variavel para verificar se é boleto

{
$mail->IsMail();//define função

//autenticação
$mail->Host = 'mail.teste.com.br';
$mail->SMTPAuth = true;
$mail->Username = 'teste@teste.com.br';
$mail->Password = 'envioteste';
$mail->Port = '25';

$mail->IsHTML(true);
$mail->Subject = utf8_decode("Enviando Arquivo ENP!");//assunto do email
$mail->From = "teste@teste.com.br";//email do remetente
$mail->FromName ='Envio';//nome do remetente

$mail->Body = utf8_decode("Arquivo ENP enviado!");
$mail->AddAddress($emailuser);//email do destinatario
$mail->AddAttachment("pdfs/$cli-$vetor[id].pdf");//anexa o arquivo

$verifica = $mail->Send();//envia o email

if($verifica){
//echo "Enviou";
}
else{
//echo "Não enviou!" . $mail->ErrorInfo;
}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu fiz assim so que não envia o boleto:

require_once('phpMailer/class.phpmailer.php');

$mail = new PHPMailer(); //instancia a classe
$mail->IsMail();//define função
//autenticação
$mail->Host = 'mail.teste.com.br';
$mail->SMTPAuth = true;
$mail->Username = 'teste@teste.com.br';
$mail->Password = 'teste';
$mail->IsHTML(true);
$mail->Subject = utf8_decode("Enviando Arquivo ENP!");//assunto do email
$mail->From = "teste@teste.com.br";//email do remetente
$mail->FromName ='Envio';//nome do remetente
$mail->Body = utf8_decode("Arquivo ENP enviado!");
$mail->AddAddress($emailuser);//email do destinatario
$mail->AddAttachment("pdfs/$cli-$vetor[id].pdf");//anexa o arquivo
$verifica = $mail->Send();//envia o email
if($verifica){
//echo "Enviou";
}
else{
//echo "Não enviou!" . $mail->ErrorInfo;
}
if($y == 5) {
$mail = new PHPMailer(); //instancia a classe
$mail->IsMail();//define função
//autenticação
$mail->Host = 'mail.teste.com.br';
$mail->SMTPAuth = true;
$mail->Username = 'teste@teste.com.br';
$mail->Password = 'teste';
$mail->IsHTML(true);
$mail->Subject = utf8_decode("Boleto!");//assunto do email
$mail->From = "teste@teste.com.br";//email do remetente
$mail->FromName ='Envio';//nome do remetente
$mail->Subject = "Boletos teste"; // Assunto da mensagem
$mail->Body = "<img src=\"http://teste.com.br/novo/imgs/site/logo.png\" alt=\":)\" class=\"logo\"> <br /><br />Caro $nomecli, segue link abaixo para impressão de seu boleto do contrato junto a teste! <br /> <a href=\"http://teste.teste.com.br/financeiro/boleto/boleto_cef_sigcb.php?id=$id_gerador_cr\">Clique Aqui para Gerar Seu Boleto</a> ";
$mail->AltBody = "Este é o corpo da mensagem de teste, em Texto Plano! \r\n <img src=\"http://teste.com.br/novo/imgs/site/logo.png\" alt=\":)\" class=\"wp-smiley\"> ";
$verifica = $mail->Send();//envia o email
if($verifica){
//echo "Enviou";
}
else{
//echo "Não enviou!" . $mail->ErrorInfo;
}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

consegui aqui.

Agora nasceu uma outra duvida.

$mail->Body = "<img src=\"http://teste.com.br/novo/imgs/site/logo.png\" alt=\":)\" class=\"logo\"> <br /><br />Caro $nomecli, segue link abaixo para impressão de seu boleto do contrato junto a teste! <br /> <a href=\"http://teste.teste.com.br/financeiro/boleto/boleto_cef_sigcb.php?id=$id_gerador_cr\">Clique Aqui para Gerar Seu Boleto</a> ";

Como faço para colocar um while para puxar quando é mais de um boleto? Preciso colocar o while dentro dessa linha do codigo de envio e não estou sabendo como fazer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.