Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

kreator

[Resolvido] erro em email com anexo

Recommended Posts

fala familia imasters!!

 

gente to quebrando a cabeça com um sisteminha de emails com anexo!!

 

 

da uma olhada!!!

 

index.php

 


<form id="form3" name="form3" method="post" action="funcoes_consulta.php" enctype="multipart/form-data">
  <table cellspacing="6">
    <div id="vaiprolado">SELECIONE SEU CONTATO</div>
    
    
    <tr align="center">
        <td  colspan="5"><select name="contato" id="contato">
        <option>VENDAS SP:</option>
        <option>solange@imefer.com.br</option>
        <option>orlando@imefer.com.br</option>
        <option>elvis@imefer.com.br</option>
        <option>mello@imefer.com.br</option>
        <option>emilio@imefer.com.br</option>
        <option>manoel@imefer.com.br</option>
        <option>sandra@imefer.com.br</option>
        <option>thercio@imefer.com.br</option>
        <option>fabio@imefer.com.br</option>
        <option>FILIAL BELO HORIZONTE :</option>
        <option>imefer@gold.com.br</option>
        <option>FILIAL - CAXIAS :</option>
        <option>imefer@malbanet.com.br</option>
        <option>FILIAL - CURITIBA :</option>
        <option>imefer@uol.com.br</option>
        <option>adolfo@homma.com.br</option>
        </select></td>
   
    </tr>
      
    <tr>
      <td width="218">Nome completo:</td>
      <td colspan="2"><input type="text" name="nome" id="nome" /></td>
      <td width="177"> </td>
    </tr>
    <tr>
      <td>Organização:</td>
      <td colspan="2"><input type="text" name="organizacao" id="organizacao" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Fone:</td>
      <td colspan="2"><input type="text" name="fone" id="fone" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Fax:</td>
      <td colspan="2"><input type="text" name="fax" id="fax" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>E-Mail:</td>
      <td colspan="2"><input type="text" name="email" id="email" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Endereço:</td>
      <td colspan="2"><input type="text" name="endereco" id="endereco" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>CEP:</td>
      <td colspan="2"><input type="text" name="cep" id="cep" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Cidade:</td>
      <td colspan="2"><input type="text" name="cidade" id="cidade" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Estado: </td>
      <td colspan="2"><input type="text" name="estado" id="estado" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Sua Referência:</td>
      <td colspan="2"><input type="text" name="referencia" id="referencia" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Observações</td>
      <td colspan="2"><textarea name="observacoes" id="observacoes" cols="30" rows="5"></textarea></td>
      <td> </td>
    </tr>
    <tr>
      <td colspan="3">Anexe sua planta</td>
    </tr>
    <tr>
      <td><label>
        <input type="file" name="anexo" id="anexo" value="ANEXO" />
      </label></td>
      <td width="201"><input type="submit" name="enviar" id="enviar" value="ENVIAR" /></td>
    </tr>
    <tr>
      <td> </td>
    </tr>
    <tr>
      <td width="20"> </td>
    </tr>
    <tr>
      <td colspan="5">* Campos Obrigatórios</td>
    </tr>
  </table>
</form>


 

funcoes_consulta.php

 


<?
$assunto = 'consulta do cliente' ;
$contato = $_POST['contato']; 
$nome = $_POST['nome']; 
$organizacao = $_POST['organizacao']; 
$fone = $_POST['fone']; 
$fax = $_POST['fax']; 
$email = $_POST['email']; 
$endereco = $_POST['endereco']; 
$cep = $_POST['cep']; 
$cidade = $_POST['cidade'];
$estado = $_POST['estado'];
$referencia = $_POST['referencia'];
$observacoes = $_POST['observacoes'];
$anexo = 0;
$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"; 
$mens .= "$mensagem\n";
$mens .= "--$boundary\n";



for($i = 0; $i < count($_FILES["file"]["name"]); $i++){        

if(is_uploaded_file($_FILES["file"]["tmp_name"][$i])){                
$fp = fopen($_FILES["file"]["tmp_name"][$i], "rb");               
$anexo = chunk_split(base64_encode(fread($fp, $_FILES["file"]["size"][$i])));                          
fclose($fp);  

$mens .= "Content-Type: ".$_FILES["file"]["type"][$i]."\n name=\"".$_FILES["file"]["name"][$i]."\"\n";                
$mens .= "Content-Disposition: attachment; filename=\"".$_FILES["file"]["name"][$i]."\"\n";                             
$mens .= "Content-transfer-encoding:base64\n\n";                 
$mens .= $anexo."\n"; 

if($i + 1 == count($_FILES["file"]["name"]))                        

$mens.= "--$boundary--";                 

else                         

$mens.= "--$boundary\n";                                 

if($_FILES["file"]['error'][$i] == 0) { $anexos++;  } } }

$headers  = "MIME-Version: 1.0\n";
$headers .= "Date: ".date("D, d M Y H:i:s O")."\n";
$headers .= "From: \"homma.com\" <homma.com>\r\n";
$headers .= "Content-type: multipart/mixed; boundary=\"$boundary\"\r\n";

if(mail($contato, $assunto, $mens, $headers)){        

echo "O email foi enviado com sucesso + $anexos anexos";} 

else {  echo "Nao foi possivel enviar o email";}  






?>



 

quando clico no botão ele envia!!!e quando cai na caixa de email tanto não aparece os campos enviados pelo _post como o anexo!!! fica praticamente o email em branco!!

 

obs:no email ele está registrando o email com um anexo,só q ele não abre!! só fica o clip do lado mais n sai disso!!!

 

galera desde já agradeço,pois preciso desse sistema funcionando até segunda!!

 

http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

gente mudei o script e deu nisso

 

<div id="area_consulta">

<?php
include "css.php";
?>

<?php

if ($_GET['acao'] == 'enviar'){
	
$assunto = 'consulta do cliente';
$nome = $_POST['nome']; 
$organizacao = $_POST['organizacao']; 
$fone = $_POST['fone']; 
$fax = $_POST['fax']; 
$email = $_POST['email']; 
$endereco = $_POST['endereco']; 
$cep = $_POST['cep']; 
$cidade = $_POST['cidade'];
$estado = $_POST['estado'];
$referencia = $_POST['referencia'];
$observacoes = $_POST['observacoes'];
$anexo = $_FILES["anexo"];
$contato = $_POST['contato']; 

$boundary = "XYZ-".date("dmYis")."-ZYX";

$fp = fopen($anexo["tmp_name"] ,"rb");
$arquivo = fread($fp, filesize($anexo["tmp_name"]));
$arquivo = base64_encode($arquivo);
fclose($fp);

$headers = "MIME-Version: 1.0 \n";
$headers .= "Content-Type: multipart/mixed; \n";
$headers .= "boundary=\"$boundary\" \n";
$headers .= "$boundary \n";

$corpoMSG = "--$boundary \n";
$corpoMSG .= "Content-Type: text/html; charset=\"iso-8859-1\ \n";
$corpoMSG .= "Content-Transfering-Encoding: 8bits \n\n";
$corpoMSG .= "<strong>Nome</strong> $nome <br> <strong>Mensagem</strong> $mensagem \r\n";
$corpoMSG .= "--$boundary \n";
$corpoMSG .= "Content-Type: ".$anexo["type"]."; name=\"".$anexo ['name']."\" \n";
$corpoMSG .= "Content-Transfer-Encoding: base64 \n";
$corpoMSG .= "Content-Disposition: attachment; fillename=\"".$anexo ['name']."\" \r\n";
$corpoMSG .= "$anexo \n";
$corpoMSG .= "--$boundary \n";


mail($contato, $assunto, $corpoMSG, $headers);



	}


?>

<div id="formalarioposition" style="margin-left:240px; margin-top:50px;">

<form id="form3" name="form3" method="post" action="?acao=enviar">
  <table cellspacing="6">
    <div id="vaiproladofdp">SELECIONE SEU CONTATO</div>
    
    
    <tr align="center">
        <td  colspan="5"><select name="contato" id="contato">
        <option>VENDAS SP:</option>
        <option>solange@imefer.com.br</option>
        <option>orlando@imefer.com.br</option>
        <option>elvis@imefer.com.br</option>
        <option>mello@imefer.com.br</option>
        <option>emilio@imefer.com.br</option>
        <option>manoel@imefer.com.br</option>
        <option>sandra@imefer.com.br</option>
        <option>thercio@imefer.com.br</option>
        <option>fabio@imefer.com.br</option>
        <option>FILIAL BELO HORIZONTE :</option>
        <option>imefer@gold.com.br</option>
        <option>FILIAL - CAXIAS :</option>
        <option>imefer@malbanet.com.br</option>
        <option>FILIAL - CURITIBA :</option>
        <option>imefer@uol.com.br</option>
        <option>adolfo@homma.com.br</option>
        <option>edgardbuda@uol.com.br</option>
        <option>suporte@sede.com.br</option>
        <option>alanarnese@hotmail.com</option>
        </select></td>
   
    </tr>
      
    <tr>
      <td width="218">Nome completo:</td>
      <td colspan="2"><input type="text" name="nome" id="nome" /></td>
      <td width="177"> </td>
    </tr>
    <tr>
      <td>Organização:</td>
      <td colspan="2"><input type="text" name="organizacao" id="organizacao" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Fone:</td>
      <td colspan="2"><input type="text" name="fone" id="fone" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Fax:</td>
      <td colspan="2"><input type="text" name="fax" id="fax" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>E-Mail:</td>
      <td colspan="2"><input type="text" name="email" id="email" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Endereço:</td>
      <td colspan="2"><input type="text" name="endereco" id="endereco" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>CEP:</td>
      <td colspan="2"><input type="text" name="cep" id="cep" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Cidade:</td>
      <td colspan="2"><input type="text" name="cidade" id="cidade" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Estado: </td>
      <td colspan="2"><input type="text" name="estado" id="estado" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Sua Referência:</td>
      <td colspan="2"><input type="text" name="referencia" id="referencia" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Observações</td>
      <td colspan="2"><textarea name="observacoes" id="observacoes" cols="30" rows="5" style="border:1px solid #666;"></textarea></td>
      <td> </td>
    </tr>
    <tr>
      <td colspan="3">Anexe sua planta</td>
    </tr>
    <tr>
      <td><label>
        <input type="file" name="anexo" id="anexo" value="ANEXO" />
      </label></td>
      <td width="201" valign="middle"><input type="submit" name="enviar" id="enviar" value="ENVIAR" /></td>
    </tr>
    <tr>
      <td> </td>
    </tr>
    <tr>
      <td width="20"> </td>
    </tr>
    <tr>
      <td colspan="5">* Campos Obrigatórios</td>
    </tr>
  </table>
</form>
</div><!-- fim do form position -->


</div><!-- fim area consulta -->

o email é enviado mais fica todo em branco!!!

 

n sei se tenho q abilitar algo no ftp pois sempre quando o email chega aparece anonymous@lp7.sede.psi.br!

 

falei com o atendimento online de suport e eles falaram q meu email n tem corpo ,ou seja está sendo mandado em branco,mais eu olho minha programação e n vejo nada de errado!!

alguem pode me dar uma luz!!

 

abraço http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

fala galera resolvi quase tudo usando a classe phpmailer!!

 

só tem um problema quando envio o email as palavras com acentuação estão erradas,como arrumo isso!!

 

 

<form id="form3" name="form3" method="post" action="funcoes_consulta.php" enctype="multipart/form-data">
  <table cellspacing="6">
    <div id="vaiprolado">SELECIONE SEU CONTATO</div>
    
    
    <tr align="center">
        <td  colspan="5"><select name="contato" id="contato">
        <option>VENDAS SP:</option>
        <option>solange@imefer.com.br</option>
        <option>orlando@imefer.com.br</option>
        <option>elvis@imefer.com.br</option>
        <option>mello@imefer.com.br</option>
        <option>emilio@imefer.com.br</option>
        <option>manoel@imefer.com.br</option>
        <option>sandra@imefer.com.br</option>
        <option>thercio@imefer.com.br</option>
        <option>fabio@imefer.com.br</option>
        <option>FILIAL BELO HORIZONTE :</option>
        <option>imefer@gold.com.br</option>
        <option>FILIAL - CAXIAS :</option>
        <option>imefer@malbanet.com.br</option>
        <option>FILIAL - CURITIBA :</option>
        <option>imefer@uol.com.br</option>
        <option>adolfo@homma.com.br</option>
        <option>edgardbuda@uol.com.br</option>
        <option>suporte@sede.com.br</option>
        <option>alanarnese@hotmail.com</option>
        </select></td>
   
    </tr>
      
    <tr>
      <td width="218">Nome completo:</td>
      <td colspan="2"><input type="text" name="nome" id="nome" /></td>
      <td width="177"> </td>
    </tr>
    <tr>
      <td>Organização:</td>
      <td colspan="2"><input type="text" name="organizacao" id="organizacao" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Fone:</td>
      <td colspan="2"><input type="text" name="fone" id="fone" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Fax:</td>
      <td colspan="2"><input type="text" name="fax" id="fax" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>E-Mail:</td>
      <td colspan="2"><input type="text" name="email" id="email" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Endereço:</td>
      <td colspan="2"><input type="text" name="endereco" id="endereco" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>CEP:</td>
      <td colspan="2"><input type="text" name="cep" id="cep" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Cidade:</td>
      <td colspan="2"><input type="text" name="cidade" id="cidade" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Estado: </td>
      <td colspan="2"><input type="text" name="estado" id="estado" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Sua Referência:</td>
      <td colspan="2"><input type="text" name="referencia" id="referencia" /></td>
      <td> </td>
    </tr>
    <tr>
      <td>Observações</td>
      <td colspan="2"><textarea name="observacoes" id="observacoes" cols="30" rows="5"></textarea></td>
      <td> </td>
    </tr>
    <tr>
      <td colspan="3">Anexe sua planta</td>
    </tr>
    <tr>
      <td><label>
        <input type="file" name="arquivo" id="arquivo" value="ANEXO" />
      </label></td>
      <td width="201"><input type="submit" name="enviar" id="enviar" value="ENVIAR" /></td>
    </tr>
    <tr>
      <td> </td>
    </tr>
    <tr>
      <td width="20"> </td>
    </tr>
    <tr>
      <td colspan="5">* Campos Obrigatórios</td>
    </tr>
  </table>
</form>

 

<?php
/**
 * Código para envio de e-mail utilizando a classe PHPMailer
 *
 * @author Leo Baiano <leobaiano@leobaiano.com>
 * @version 1.0
*/
 
// Chama a classe PHPMailer (pode baixar ela aqui: http://phpmailer.sourceforge.net)
require_once('phpmailer/class.phpmailer.php');
 
// Instancia o objeto $mail a partir da Classe PHPMailer
$mail = new PHPMailer();
 
// Recupera os dados do formulário
$assunto = 'consulta do cliente';
$nome = $_POST['nome']; 
$organizacao = $_POST['organizacao']; 
$fone = $_POST['fone']; 
$fax = $_POST['fax']; 
$email = $_POST['email']; 
$endereco = $_POST['endereco']; 
$cep = $_POST['cep']; 
$cidade = $_POST['cidade'];
$estado = $_POST['estado'];
$referencia = $_POST['referencia'];
$observacoes = $_POST['observacoes'];
$contato = $_POST['contato']; 
$mensagem = $_POST['mensagem'];
$arquivo    = $_FILES["arquivo"];
 
// Recupera o nome do arquivo
$arquivo_nome = $arquivo['name'];
 
// Recupera o caminho temporario do arquivo no servidor
$arquivo_caminho = $arquivo['tmp_name'];
 
// Monta a mensagem que será enviada
$corpo = "
            <strong>Nome:</strong> $nome<br />
	    <strong>E-mail:</strong> $email<br />
		<strong>Organização:</strong> $organizacao<br />	
		<strong>Tel:</strong> $fone<br />	
		<strong>Fax:</strong> $fax<br />	
		<strong>Email:</strong> $email<br />	
		<strong>Cep:</strong> $cep<br />	
		<strong>Cidade:</strong> $cidade<br />	
		<strong>Estado:</strong> $estado<br />	
		<strong>Referencia:</strong> $referencia<br />	
	    <strong>Observações:</strong> $observacoes<br />
		<strong>Contato:</strong> $contato<br />
		<strong>Mensagem:</strong><br /><br />
	    $mensagem
	";
$corpoSimples = "
            Nome: $nome\n
	    E-mail: $email\n				
	    Messagem:\n\n
	    $mensagem
	";
 
// Informo o Host, From, subject e para quem o e-mail será enviado
$mail->Host = 'www.perspectivasustentavel.com.br';
$mail->From = $email;
$mail->Subject = 'consulta de cliente imefer';
$mail->AddAddress('adolfo@homma.com.br');
 
// Informa que a mensagem deve ser enviada em HTML
$mail->IsHTML(true);
 
// Informa o corpo da mensagem
$mail->Body = $corpo;
 
// Se o e-mail destino não suportar HTML ele envia o texto simples
$mail->AltBody = $corpoSimples;
 
// Anexa o arquivo
$mail->AddAttachment($arquivo_caminho, $arquivo_nome);
 
// Tenta enviar o e-mail e analisa o resultado
if ($mail->Send()) {
    echo 'E-mail enviado co sucesso';
}
else {
    echo 'Erro:' . $mail->ErrorInfo;
}
?>


essa é minha ultima duvida,vlw serra pelo conselho do phpmailer!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

RESOLVIDO

 

a solulução é a função utf8_decode()

 

 

// Recupera os dados do formulário
$assunto = 'consulta do cliente';
$nome = utf8_decode($_POST['nome']); 
$organizacao = utf8_decode($_POST['organizacao']); 
$fone = utf8_decode($_POST['fone']); 
$fax = utf8_decode($_POST['fax']); 
$email = utf8_decode($_POST['email']); 
$endereco = utf8_decode($_POST['endereco']); 
$cep = utf8_decode($_POST['cep']); 
$cidade = utf8_decode($_POST['cidade']);
$estado = utf8_decode($_POST['estado']);
$referencia = utf8_decode($_POST['referencia']);
$observacoes = utf8_decode($_POST['observacoes']);
$contato = utf8_decode($_POST['contato']); 
$observacoes = utf8_decode($_POST['observacoes']);
$arquivo    = $_FILES["arquivo"];

grande abraço!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.