kklo 0 Denunciar post Postado Janeiro 6, 2012 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? Compartilhar este post Link para o post Compartilhar em outros sites
Carlos Ramos Web 0 Denunciar post Postado Janeiro 6, 2012 Amigo, faça assim! require("phpmailer/class.phpmailer.php"); $email = $_REQUEST['email2']; $nome = $_REQUEST['nome']; $telefone = $_REQUEST['telefone']; $arquivo = upload_arquivo($_FILES['curriculum'],'curriculo/'); $msg = "<strong>Envio de Curriculo via site</strong><br/> <strong>Nome: </strong>$nome<br/> <strong>E-mail: </strong>$email<br/> <strong>Telefone: </strong>$telefone<br/> "; $mail = new PHPMailer(); $mail->IsHTML(true); $mail->From = 'emaildoremetente@site.com'; $mail->FromName = iconv("UTF-8","ISO-8859-1",$nome); $mail->AddAddress("seuemail@site.com.br"); // $mail->AddAttachment("curriculo/$arquivo"); $mail->Charset = 'iso-8859-1'; $mail->Subject = iconv("UTF-8","ISO-8859-1","Envio de curriculos via site"); $mail->Body = $msg; $mail->WordWrap = 50; if(!$mail->Send()) { echo "<script>alert('Ocorreu um erro na sua solicitacao por favor tente mais tarde!');history.back(-1);</script>"; echo 'Mailer error: ' . $mail->ErrorInfo; } else { echo "<script>alert('Currículo Cadastrado com Sucesso !');;history.back(-1);</script>"; } Carlos Ramos Web - Soluções para internet www.carlosramosweb.com.br Criação Criativa - Soluções para internet www.criacaocriativa.com.br Compartilhar este post Link para o post Compartilhar em outros sites
Bobrinha 4 Denunciar post Postado Março 22, 2014 Fatal error: Call to undefined function upload_arquivo() Cade a função? Compartilhar este post Link para o post Compartilhar em outros sites