Anexo no phpMailer
Boa noite a todos!
Estou tendo um probleminha referente ao envio de um anexo em email.
Tenho 3 scripts em php, sendo:
envia_email.php
================================================
<?php
//autenticacao
//-----------------
//$porta = ''; // porta padrao: 25
//$secure = ''; // 'ssl' ou 'tls'
//-----------------
$host = 'meudominio.com.br';
$userName = 'email@meudominio.com.br';
$senha = 'xxxxxxx';
//----------------
$from = 'email@meudominio.com.br';
$fromName = 'cadastro';
$addAddress = 'cadastros@meudominio.com.br';//destinatario
$nameAddAddress = 'Site';//nome destinatario
$charset = 'iso-8859-1';
// $subject = ''; //titulo
$arquivo = '';
$tipoTexto = 'html';
$body = 'Dados';//corpo do email
require("phpmailer/class.phpmailer.php");
// Inicia a classe PHPMailer
$mail = new PHPMailer();
// Define os dados do servidor e tipo de conexão
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->IsSMTP(); // Define que a mensagem será SMTP
$mail->Host = $host; // Endereço do servidor SMTP
$mail->SMTPAuth = true; // Usa autenticação SMTP? (opcional)
$mail->Username = $userName; // Usuário do servidor SMTP
$mail->Password = $senha; // Senha do servidor SMTP
$mail->SMTPSecure = $secure;
$mail->Port = $porta;
// Define o remetente
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->From = $from; // Seu e-mail
$mail->FromName = $fromName; // Seu nome
// Define os destinatário(s)
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->AddAddress($addAddress, $nameAddAddress);
//$mail->AddAddress('emaildaicional@gmail.com');
//$mail->AddCC('ciclano@site.net', 'Ciclano'); // Copia
//$mail->AddBCC('fulano@dominio.com.br', 'Fulano da Silva'); // Cópia Oculta
// Define os dados técnicos da Mensagem
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
if ($tipoTexto=='html'){
$mail->IsHTML(true); // Define que o e-mail será enviado como HTML
}elseif($tipoTexto=='texto'){
$mail->IsHTML(false); // Define que o e-mail será enviado como HTML
}
$mail->CharSet = $charset; // Charset da mensagem (opcional)
// Define a mensagem (Texto e Assunto)
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
$mail->Subject = $subject; // Assunto da mensagem
$mail->Body = $body;
$mail->AltBody = '\n \n \n Teste de envio phpmailer \r\n ';
// Define os anexos (opcional)
// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
if ($arquivo!=""){
$mail->AddAttachment($arquivo, 'autodetect', 'attachment', 'quoted-printable'); // Insere um anexo
}
// Envia o e-mail
$enviado = $mail->Send();
// Limpa os destinatários e os anexos
$mail->ClearAllRecipients();
$mail->ClearAttachments();
// Exibe uma mensagem de resultado
if ($enviado) {
echo "E-mail enviado com sucessoo!";
} else {
echo "Não foi possível enviar o e-mail.<br /><br />";
echo "<b>Informações do erro:</b> <br />" . $mail->ErrorInfo;
}
?>
================================================
Esta enviando o email sem problema, mas sem o anexo.
exp.php
================================================
<?php
include "conexao.php";
session_start();
include "envia_email.php";
$vInicio = 0;
if ($_REQUEST['de'] != '')
{
$vInicio = $_REQUEST['de'];
}
$vFim = 0;
if ($_REQUEST['ate'] != '')
{
$vFim = $_REQUEST['ate'];
}
$vlimite = " ";
$voffset = "";
if ($_REQUEST['offset'] != "")
{
$vOffset = " OFFSET "& $_REQUEST['offset'];
$vlimite = " LIMIT 50 ";
}
$vCond = "";
if ($_REQUEST['pendente'] == "1")
{
$vCond = " enviar = 0 ";
$vlimite = " LIMIT 50 ";
}
$campos = "*";
....
/************* Construindo arquivo SCV *************/
$handle = fopen ("send/cv" . $cpf . ".scv", "w+");
....
/ Fim do arquivo /
fwrite($handle, $conteudo);
fclose($handle);
$linhaatual++;
// $reg = mysql_fetch_row($resultado);
//prepara e envia os dados (arquivo) via email
$p_codigo = $cpf;
$assunto = 'Cadastro de clientes';
$mensagem = 'Envio do cadastrado pelo site';
$arquivo = "send/cv".$cpf.".scv";
(n) sendMail("cadastro@meudominio.com.br", $mensagem, $assunto,$arquivo );
} // fim while
}
else
{
echo "Erro! Não foi possível carregar os dados.";
}
?>
=============================================
Este arquivo pega os dados do BD e transforma em arquivo .scv
Mas não estou conseguindo anexar este arquiuvo.
Estava usando o SendMail, e funcionava, mas não com o meu servidor e sim com um servidor diferente e não consegui configurar para receber na conta cadastro@meudominio.com.br
Alguem poderia me ajudar?
Obrigado
Ricardo
Parece que a coisa é dificil.
Alguém conhece algum scritp em php que pegue os dados de uma tabela, crie um arquivo scv e envie como anexo para uma conta de email?
Discussão (2)
Carregando comentários...