Rogério Filho Postado Outubro 7, 2010 Denunciar Share Postado Outubro 7, 2010 (editado) Estou tentando criar um email com anexo. Achei um script legal, dá tudo certo, porém o anexo não é enviado. Não sei se é o upload que não está sendo feito, sei lá... Alguém pode me ajudar?<?php //peguei os dados enviados pelo formulario $assunto = $_POST["assunto"]; $nome = $_POST["nome"]; $email_rem = $_POST['email_rem']; $mensagem = $_POST["mensagem"]; $email = $_POST["email"]; $mensagem = wordwrap( $mensagem, 50, "<br />"); //tratamento do anexo $arquivo = isset($_FILES["arquivo"]) ? $_FILES["arquivo"] : FALSE; if(file_exists($arquivo["tmp_name"]) and !empty($arquivo)){ $fp = fopen($_FILES["arquivo"]["tmp_name"],"rb"); $anexo = fread($fp,filesize($_FILES["arquivo"]["tmp_name"])); $anexo = base64_encode($anexo); fclose($fp); $anexo = chunk_split($anexo); $boundary = "XYZ-" . date("dmYis") . "-ZYX"; $mens = "–$boundary\n"; $mens .= "Content-Transfer-Encoding: 8bits\n"; $mens .= "Content-Type: text/html; charset=\"ISO-8859-1\"\n\n"; //plain $mens .= "<font face=verdana size=4><strong>$assunto"."<br><br></strong></font>"; $mens .= "<font face=verdana size=2><strong>Nome: </strong>"."$nome"."<br>"; $mens .= "<strong>E-Mail: </strong>"."$email_rem"."<br>"; $mens .= "<strong>Mensagem: </strong>"."$mensagem\n"; $mens .= "–$boundary\n"; $mens .= "Content-Type: ".$arquivo["type"]."\n"; $mens .= "Content-Disposition: attachment; filename=\"".$arquivo["name"]."\"\n"; $mens .= "Content-Transfer-Encoding: base64\n\n"; $mens .= "$anexo\n"; $mens .= "–$boundary–\r\n"; $headers = "MIME-Version: 1.0\n"; $headers .= "From: \"$nome\" <$email_rem>\r\n"; $headers .= "Content-type: multipart/mixed; boundary=\"$boundary\"\r\n"; $headers .= "$boundary\n"; //envio o email com o anexo mail($email,$assunto,$mens,$headers); echo"<script language= 'JavaScript'> alert('Sua mensagem foi enviada com sucesso') </script>"; } //se não tiver anexo else{ $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; $headers .= "From: \"$nome\" <$email_from>\r\n"; //envia o email sem anexo mail($email,$assunto,$mens,$headers); echo"<script language= 'JavaScript'>alert('Sua mensagem foi enviada com sucesso') </script>"; } ?> Editado Outubro 9, 2010 por quintelab Adicionar tag's! *FIT* Removido caixa Alta do título! quintelab Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 *FIT* Postado Outubro 8, 2010 Denunciar Share Postado Outubro 8, 2010 Como está fazendo o upload do anexo? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rogério Filho Postado Outubro 13, 2010 Autor Denunciar Share Postado Outubro 13, 2010 Olá FIT, acho que essa é uma boa pergunta; será que você pode me dizer como seria para uppar o arquivo? Pelo jeito, meu problema está aí. Desde já agradeço. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Rogério Filho
Estou tentando criar um email com anexo. Achei um script legal, dá tudo certo, porém o anexo não é enviado. Não sei se é o upload que não está sendo feito, sei lá... Alguém pode me ajudar?
Editado por quintelabAdicionar tag's! *FIT* Removido caixa Alta do título! quintelab
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.