By Competence Posted November 12, 2012 Report Share Posted November 12, 2012 É o seguinte, os outros dados chegam normal, porém o anexo não chega (chega um monte de letras) alguém sabe por que isso tá acontecendo?envia.php<?php /*Verifica qual é o sistema operacional e ajusta a quebra da linha funcional do cabeçalho de e-mail para Windows e Linux Existem diferenças entre o ambiente Linux e Windows, por isso a validação abaixo configura a variável $quebra_linha com o caracter correto para cada sistema_operacional Windows utiliza "\r\n" Linux utiliza "\n" */ if(PHP_OS == "Linux") $quebra_linha = "\n"; //Se for Linux //define os dados do remetente (deve ser um e-mail do seu domínio conforme determina a RFC 822) $email_from = 'contato@bycompetence.com.br'; //pego os dados enviados pelo formulário $nomecompleto = $_POST['nomecompleto']; $email = $_POST['email']; $telefone = $_POST['telefone']; $txcelular = $_POST['txcelular']; $txcidade = $_POST['txcidade']; $txestado = $_POST['txestado']; $txcargo = $_POST['txcargo']; $txprofissional = $_POST['txprofissional']; $txhierarquico = $_POST['txhierarquico']; //formato o campo da mensagem $mensagem = wordwrap( $mensagem, 10000, "<br>", 1); //valido os emails if (!ereg("^([0-9,a-z,A-Z]+)([.,_]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([0-9,a-z,A-Z]){2}([0-9,a-z,A-Z])?$", $email)){ echo('<center>Digite um email valido</center>'); echo('<center><a href="java script:history.go(-1)">Voltar</center></a>'); exit; } $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); $mensagem_cabecalho = '<P><FONT color=#3300ff size=5>Mensagem entregue com sucesso!!!</FONT></P> <TABLE> <TBODY> </TBODY></TABLE>'; $boundary = 'XYZ-' . date("dmYis") . '-ZYX'; $mens = '--' . $boundary . $quebra_linha; $mens .= 'Content-Transfer-Encoding: 8bits' . $quebra_linha; $mens .= 'Content-Type: text/html; charset="ISO-8859-1"' . $quebra_linha . $quebra_linha; $mens .= $mensagem_cabecalho . $quebra_linha; $mens .= $mensagem . $quebra_linha; $mens .= " $nomecompleto <BR> $email <BR> $telefone <BR> $txcelular <BR> $txcidade <BR> $txestado <BR> $txcargo <BR> $txprofissional <BR> $txhierarquico <BR>"; $mens .= '--' . $boundary . $quebra_linha; $mens .= 'Content-Type: ' . $arquivo["type"] . $quebra_linha; $mens .= 'Content-Disposition: attachment; filename="' . $arquivo["name"] . '"' . $quebra_linha; $mens .= 'Content-Transfer-Encoding: base64' . $quebra_linha . $quebra_linha; $mens .= $anexo . $quebra_linha; $mens .= '--' . $boundary . '--' . $quebra_linha; $headers = 'MIME-Version: 1.0' . $quebra_linha; $headers .= 'From: ' . $email_from . $quebra_linha; $headers .= 'Return-Path: ' . $email_from . $quebra_linha; $headers .= 'Content-type: multipart/mixed; boundary="' . $boundary . '"' . $quebra_linha; $headers .= $boundary . $quebra_linha; //envio o email com o anexo mail($email,$assunto,$mens,$headers); echo('Email enviado com Sucesso! <a href="email.html">Voltar</a>'); } //se não tiver anexo else{ $mens .= " $nomecompleto <BR> $email <BR> $telefone <BR> $txcelular <BR> $txcidade <BR> $txestado <BR> $txcargo <BR> $txprofissional <BR> $txhierarquico <BR>"; $headers = 'MIME-Version: 1.0' . $quebra_linha; $headers .= 'Content-type: text/html; charset=iso-8859-1' . $quebra_linha; $headers .= 'From: ' . $email_from . $quebra_linha; //envia o email sem anexo mail($email,$assunto,$mens,$headers); echo('Email enviado com Sucesso! <a href="email.html">Voltar</a>'); } ?> Quote Link to comment Share on other sites More sharing options...
0 ESerra Posted November 13, 2012 Report Share Posted November 13, 2012 enzio92, só pra lhe avisar, o fórum mostra o IP do usuário, e no outro post você enviou o e-mail do site: contato@bycompetence.com.br.http://scriptbrasil.com.br/forum/index.php?showtopic=172359 Quote Link to comment Share on other sites More sharing options...
0 By Competence Posted November 13, 2012 Author Report Share Posted November 13, 2012 (edited) Edgar, estou precisando de ajuda, porque está apagando meus comentários? se não quer me ajudar ok, mas deixa pra quem tem boa vontade então! Edited November 13, 2012 by By Competence Quote Link to comment Share on other sites More sharing options...
0 blew Posted November 13, 2012 Report Share Posted November 13, 2012 cara, pega uma classe pronta, chamada PHPMailerhttp://phpmailer.worxware.com/ai no site eles ensinam como que funciona o envio COM e SEM anexos Quote Link to comment Share on other sites More sharing options...
0 ESerra Posted November 13, 2012 Report Share Posted November 13, 2012 Edgar, estou precisando de ajuda, porque está apagando meus comentários? se não quer me ajudar ok, mas deixa pra quem tem boa vontade então!3.8 Não é permitida a postagem de mensagens com a finalidade de manter o tópico no início da lista (up), nem de mensagens que não se refiram ao assunto do tópico (flood). Caso isso ocorra, as mensagens serão excluídas e os autores, advertidos. http://scriptbrasil.com.br/forum/index.php?act=boardrules Quote Link to comment Share on other sites More sharing options...
0 By Competence Posted November 13, 2012 Author Report Share Posted November 13, 2012 cara, pega uma classe pronta, chamada PHPMailerhttp://phpmailer.worxware.com/ai no site eles ensinam como que funciona o envio COM e SEM anexosMuito obrigado, vou tentar aqui. Quote Link to comment Share on other sites More sharing options...
Question
By Competence
É o seguinte, os outros dados chegam normal, porém o anexo não chega (chega um monte de letras) alguém sabe por que isso tá acontecendo?
envia.php
Link to comment
Share on other sites
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.