HélioSan 0 Denunciar post Postado Novembro 16, 2019 O script abaixo funciona normalmente quando o e-mail é recebido pelo google mail. Agora quando o e-mail é do yahoo ou da microsoft, a mensagem é recebida, porém o anexo dá erro ao baixar. O que pode estar ocorrendo ? o código está errado ? <?php $nome = filter_input(INPUT_POST,'nome'); $email = filter_input(INPUT_POST,'email'); $msg = filter_input(INPUT_POST,'msg'); $arquivo = $_FILES['arquivo']; $arquivo_nome = $_FILES['arquivo']['name']; $arquivo_temporario = $_FILES['arquivo']['tmp_name']; $arquivo_tipo = $_FILES['arquivo']['type']; $arquivo_tamanho = $_FILES['arquivo']['size']; $para = "email1@google.com,email2@outlook.com,@email3@yahoo.com"; $assunto = "Envio de Arquivo"; $remetente = "Hélio Sander<dev@meuservidor.com.br>"; $boundary= md5(time()); $cabecalhos = "MIME-Version:1.0\n"; $cabecalhos.= "From: $remetente\n"; $cabecalhos.= "Reply-to: $remetente\n"; $cabecalhos.= "Content-type:multipart/mixed; boundary =\"$boundary\"\n"; $corpo_mensagem = " Formulário de Contato<br> Nome: $nome<br> Assunto: $assunto<br> Mensagem: $msg<br> "; if(file_exists($arquivo_temporario)){ $a = fopen($arquivo_temporario,"r"); $anexo = fread($a,$arquivo_tamanho); $anexo = base64_encode($anexo); $anexo = chunk_split($anexo); fclose($a); $mensagem = "--$boundary\n"; $mensagem .= "Content-Type: text/html; charset=\"utf8\"\n"; $mensagem .= "$corpo_mensagem\n"; $mensagem .= "--$boundary\n"; $mensagem .= "Content-Type:$arquivo_tipo\n"; $mensagem .= "Content-Disposition: attachment; filename=$arquivo_nome\n"; $mensagem .= "Content-Transfer-Encoding: base64\n"; $mensagem .= "$anexo\n"; } else{ $mensagem = "Content-Type:text/html; charset=\"utf-8\"\n"; $mensagem .= "$corpo_mensagem\n"; } mail($para,$assunto,$mensagem,$cabecalhos); echo "Mensagem Enviada com sucesso!"; Compartilhar este post Link para o post Compartilhar em outros sites