Enviar e-mail com anexo usando PHPmail
PHPMail é uma classe de envio de email mais utilizado, nesse post vou mostra um script do PHPMail para enviar email com anexo. Para baixar as classes do PHPMail clique aqui.
[sourcecode language=”php”]</pre>
<?
include(‘include/mail/class.phpmailer.php’); //Puxa a classe do PHPMailer
#DADOS DO FORMULÁRIOS
$nome = $_POST[‘nome’];
$email = $_POST[’email’];
$telefone = $_POST[‘telefone’];
// Para enviar o ARQUIVO, temos que fazer o upload conforme exemplo abaixo.
$nomes=$_FILES[‘files’][‘name’]; // Recebo o nome do arquivo
$nome_temp=$_FILES[‘files’][‘tmp_name’]; // Recebe o nome do endereços temporário
$tamanho=$_FILES[‘files’][‘size’]; // Recebe o tamanho do arquivo
//print_r($_FILES);
//exit;
$meudiretorio = "C:/wamp/tmp/";
// Aqui você define onde o arquivo será armazenado temporário
move_uploaded_file($nome_temp, $meudiretorio.$nomes); //Move o arquivo temporário
$assunto = utf8_decode("Formulário de Seja um representante: ").$nome;
$data = date("d/m/Y");
$hora = date("h:i");
$mail = new PHPMailer();
//$mail->IsSMTP(); $mail->SMTPAuth = true;
$mail->IsMail();
//$mail->SMTPDebug = true;
$mail->IsHTML(true);
$mail->ContentType = ‘text/html’;
$mail->CharSet = ‘iso-8859-1′;
$mail->Timeout=30;
$mail->Host = ”;
$mail->Port = ”;
$mail->Username = ”;
$mail->Password = ”;
$mail->From = ’email@dominio.com’;
$mail->FromName = ‘Nome do remetente’;
$mail->SetLanguage(‘br’,’include/mail/language/’);
$mail->AddAddress("email@dominio.com.br", "");
ini_set(‘max_execution_time’,’2000′);
// Aumenta o tempo de execução do servidor "2000 segundos"
ini_set("memory_limit","50M");
//Aumenta a capacidade do servidor para enviar arquivo grande "50M" ou "100M".
if ( $nomes != "" )
// Para garantir que o var dar erro de execução caso não envie anexo…
// " Caso envie só texto ".
{
$mail->AddAttachment($nome_temp,$nomes) ;
// Aqui enviara o arquivo em anexo.
}
$mail->Subject = $assunto;
$msg = "<h2>Dados Pessoais</h2>
<strong>Nome</strong>: ".$nome."<br>n
<strong>Email</strong>: ".$email."<br>n
<strong>Residencial</strong>: ".$telefone." <br>n
<br><br>
Mensagem enviada: ".$data." às ".$hora."
";
$mail->Body = $msg;
if(!$mail->Send())
{
$err .=" ; ".$email."($mail->ErrorInfo)<br>";
$ok = ‘3’;
} else {
$ok = ‘0’;
}
$mail->ClearAddresses();
header(‘location: index.php’);
?>
<pre>
[/sourcecode]