Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Patricia Serafin

Enviar multiplo emails com phpmailer.

Recommended Posts

Estou com um problema semelhante, tenho um select no html onde o usuário escolhe para qual unidade ele envia o formulário, estou usando dessa forma, mas não estou sabendo chamar o item e não está enviando para nenhum dos endereços, uso locaweb:

 

<?

require_once('class.phpmailer.php');

if(isset($_POST['destinatarios'])):


//Remetentes
$email = AddAddress($dest);
$nomeusuario = "American One Idiomas";


//Corpo da Mensagem
$mailer = new PHPMailer();
$mailer->IsSMTP();
$mailer->SMTPDebug = 1;
$mailer->Port = 587; //Indica a porta de conexão para a saída de e-mails. Utilize obrigatoriamente a porta 587.

$mailer->Host = 'smtp.americanone.com.br'; //Onde em 'servidor_de_saida' deve ser alterado por um dos hosts abaixo:
//Para cPanel: 'localhost';
//Para Plesk 11 / 11.5: 'smtp.dominio.com.br';


//Descomente a linha abaixo caso revenda seja 'Plesk 11.5 Linux'
//$mailer->SMTPSecure = 'tls';


$mailer->SMTPAuth = true; //Define se haverá ou não autenticação no SMTP
$mailer->Charset = 'UTF-8'; // codificação UTF-8, a codificação mais usada recentemente
$mailer->Username = 'contato@americanone.com.br'; //Informe o e-mai o completo
$mailer->Password = 'xxxxxx'; //Senha da caixa postal
$mailer->FromName = utf8_decode($nomeusuario); //Nome que será exibido para o destinatário
$mailer->From = 'contato@americanone.com.br'; //Obrigatório ser a mesma caixa postal indicada em "username"


$mailer->Subject = 'Mensagem via contato do site' .date("H:i"). '-' .date("d/m/Y");
$mailer->Body = "Nome = $nome \n" . "Email = $email \n" . "Telefone = $telefone \n" . "Mensagem = $mensagem \n";


//Destinatarios / Respostas

foreach($_POST['destinatarios'] as $dest) { //foreach só percorre as taxas que o usuário clicou.
if($dest != ''){
$mail->AddAddress($dest); //E-mail e nome do destinatario
}


if(!$mailer->Send())
{
echo "Mensagem não enviada";
echo "Erro: " . $mailer->ErrorInfo; exit;
}
echo "<script>
    alert('Sua mensagem foi enviada, obrigado!');
    window.location.href='http://www.americanone.com.br';</script>";

?>

aqui trecho do html

<form id="form1" name="form1" method="post" action="envio2.php">
                  <div style="margin-bottom:10px; margin-top:10px;">
                    <label>Escolha a unidade que deseja entrar em contato <br/>
                      <input type="hidden" name="unidades" id="unidades" value="<?php echo $row_unidades_setado['unidades']; ?>" />
                    </label>
                    <label for="destinatarios[]"></label>
                    <select name="destinatarios[]" id="destinatarios[]">
                      <option value=""> --UNIDADES-- </option>
                      <option value="contato@americanone.com.br">American One Contato</option>
                      <option value="nh@americanone.com.br">American One Novo Hamburgo</option>
                      <option value="bg@americanone.com.br">American One Bento Gonçalves</option>
                    </select>
                  </div>
                  
                </form>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
DiF    2.709

@Patricia Serafin Olá,  Seja bem vinda em nosso Clube do Hardware.

 

Sobre seu código, não tenho certeza, mas você está tentando enviar mais de um e-mail, através de um array.

Ao invés de criar um array de e-mails,  tente receber um único endereço.

 

Qual a mensagem de erro que dá?

PS: lembro que outros usuários já apresentaram problemas de envio com o phpmailer e a locaweb.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
Patricia Serafin    4
  • Autor do tópico
  • o erro define que devo citar um e-mail de destino, pode me dar um auxilio, não entendo quase nada de php.

     

    o que preciso é incluir no php uma forma de escolha para envio do formulário, o mesmo sem essa opção de escolha funciona bem, a questão é que há duas unidades que querem receber em seu respectivo e-mail o contato do cliente e não um unico e-mail recebendo tudo das duas unidades, não estou sabendo fazer isso.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    DiF    2.709

    @Patricia Serafin Ainda não entendi o que você quis fazer no código.

    Você quer enviar múltiplos e-mails para endereços diferentes?

    Quer enviar um mesmo e-mail para mais de um endereço de e-mail?

    Essa opção de escolhe precisa ser múltipla? ou seja, poder selecionar mais de um endereço ali da lista?

     

    Por favor, dê o máximo de informações relevantes ao seu objetivo para que possamos ajudar com maior eficiência.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Patricia Serafin    4
  • Autor do tópico
  • Obrigada! Vamos lá...

    Trata-se de um site para uma escola que possui duas unidades em cidades diferente.

    Tenho um formulário básico que contém um select, aqui o usuário escolhe qual unidade quer entrar em contato. O formulário após preenchido será enviado somente para a unidade que o usuário escolheu.

     

    Exemplo: Moro em Bento Gonçalves-RS quero entrar em contato com a escola situada em Bento Gonçalves.

    Recebendo meu contato a escola de destino entrará em contato comigo.

     

    Abaixo HTML:

    <form action="php/email.php" method="POST"> 
    <p>
    Escolha a unidade que deseja entrar contato<br />
    <input type="hidden" name="unidades" id="unidades" value="<?php echo $row_unidades_setado['unidades']; ?>" />
    <label for="destinatarios[]"></label>
    <select name="destinatarios[]" id="destinatarios[]">
    <option value=""> --UNIDADES-- </option>
    <option value="nh@americanone.com.br">American One Novo Hamburgo</option>
    <option value="bg@americanone.com.br">American One Bento Gonçalves</option>
    </select>
    
    <br />  
    
    <p> 
    Nome<br /> 
    <input type="text" size="30" name="nome" required> 
    </p>   
    
    <p> 
    E-mail<br /> 
    <input type="text" size="30" name="email" required>		
    </p>   
    
    <p> 
    Telefone<br /> 
    <input type="text" size="35" name="telefone" required> 
    </p>   
    
    <p> 
    Mensagem<br /> 
    <input type="text" cols="1" rows="10" name="mensagem" required> 
    </p>  
    
    <p>
    <input type="submit" name="BTEnvia" value="Enviar"> 
    </p>
    
    </fieldset>
    </form>

     

    Em um primeiro momento estava enviando apenas para um e-mail, o phpmailer estava funcionando bem.

    Este é o código que estava utilizando:

    <?php
     
    require_once('class.phpmailer.php');
    
    $headers .= "MIME-Version: 1.0\r\n";
    $headers .= "Content-Type: text/html; charset=utf-8\r\n";
    
    $mailer = new PHPMailer();
    $mailer->IsSMTP();
    $mailer->SMTPDebug = 1;
    $mailer->Port = 587;
     
    $mailer->Host = 'smtp.americanone.com.br';
    
    $mailer->SMTPAuth = true;
    $mailer->Username = 'contato@americanone.com.br';
    $mailer->Password = 'xxxxxx';
    $mailer->FromName = 'Contato American One';
    $mailer->From = 'contato@americanone.com.br';
    $mailer->AddAddress('contato@americanone.com.br'); 
    $mailer->Subject = 'Mensagem via contato do site' .date("H:i"). '-' .date("d/m/Y");
    $mailer->Body = "Nome = $nome \n" . "Email = $email \n" . "Telefone = $telefone \n" . "Mensagem = $mensagem \n";
    
    	
    if(!$mailer->Send())
    {
    echo "Mensagem não enviada";
    echo "Erro: " . $mailer->ErrorInfo; exit;
    }
    echo "<script>
        alert('Sua mensagem foi enviada, obrigado!');
        window.location.href='http://www.americanone.com.br';</script>";
    
    ?>

     

    A escola agora quer/prefere que as unidades recebam somente o que se refere ao seu campo.

    Então consultei o que pude na internet sobre o assunto e procurei acrescentar ao código que funcionava algumas opções que encontrei em minha pesquisa, sem sucesso.

     

    Preciso de uma solução, não sei como fazer. Pode me ajudar? Caso precise de mais informações estou a disposição.

     

     

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    DiF    2.709

    @Patricia Serafin Acho que consegui captar a vossa mensagem!

    Então,   vejo algumas coisas ali, mas não posso dar certeza de que seja a fonte do problema.

     

    1) A variável  $email = AddAddress($dest);   De onde vem?  se é do campo e-mail que o usuário digitou precisa ser recebida com $_POST[]

     

    2) Aquele foreach, é usado para iterar um vetor. No caso, você não precisa de um vetor porque quer que o e-mail seja enviado somente ao endereço da unidade escolhida.

     

    3)O teste de IF  no final, ele testa se o e-mail não foi enviado.  Pelo menos creio que faltou inserir a parte OK dentro do ELSE e não fora do IF.

     

    4) A versão do phpmailer que você está usando é bem mais antiga, a nova altera algumas coisas.( recomendo usar a versão mais recente encontrada aqui: https://github.com/PHPMailer/PHPMailer

     

    Agora, vamos por partes!

    Comente toda a parte do phpmailer  usando o bloco :  /*      */   

     

    E façamos os testes iniciais.

    Primeiro retire a menção de vetor do formulário deixando desta forma:

     

    <form action="php/email.php" method="POST"> 
    <p>
    Escolha a unidade que deseja entrar contato<br />
    <input type="hidden" name="unidades" id="unidades" value="<?php echo $row_unidades_setado['unidades']; ?>" />
    <label for="destinatarios"></label>
    <select name="destinatarios" id="destinatarios">
    <option value=""> --UNIDADES-- </option>
    <option value="nh@americanone.com.br">American One Novo Hamburgo</option>
    <option value="bg@americanone.com.br">American One Bento Gonçalves</option>
    </select>

    Repare que eu tirei os []  do lado a palavra destinatario.   Uma era porque no ID não se põe vetores!

    Com isso,  a escolha sempre será unitária, ou seja,  ou será escolhida a American One Novo Hamburgo ou American One Bento Gonçalves.

     

    Teste parte 2:

     

    No seu php praticamente todo comentado(para não apagar o código e ele não ser interpretado), receba TODOS os dados do formulário pelo $_POST[]

     

    então ficaria assim:

    $unidade       = $_POST["destinatarios"];
    $nome          = $_POST["nome"];
    $email          = $_POST["email"];
    $telefone       = $_POST["telefone"];
    $mensagem    = $_POST["mensagem"];

    Com isso temos, em variáveis os valores digitados e selecionados no formulário.

     

    Agora podemos fazer o terceiro teste que é saber se elas possuem o valor.

    Então pode-se colocar um "echo" na frente de cada só para ver o valor contido.

     

    Se aparecer na tela todos os valores dos campos, já percorreu metade do caminho!

    E então podemos ir para próxima parte.

    Seguindo as dicas do site que postei do Github que contem uma nova sintaxe,  você monta como será enviado.

     

    Fico no aguardo dos resultados dos testes.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Patricia Serafin    4
  • Autor do tópico
  • Bom dia,

     

    Então fiz a alteração do php para o indicado, alterei o html conforme orientado e responde com o seguinte erro:

     

    Invalid address: (addAnAddress to): Erro: You must provide at least one recipient email address.

    O html está dessa forma:

    <form action="" method="POST"> 
        <p> 	
            Escolha a unidade que deseja entrar contato<br />
        </p>
    			<input type="hidden" name="unidades" id="unidades" value="" />
    			<label for="destinatarios"></label>
    			<select name="destinatarios" id="destinatarios">
    			<option value=""> --UNIDADES-- </option>
                <option value="contato@americanone.com.br">American One Contato</option>
    			<option value="nh@americanone.com.br">American One Novo Hamburgo</option>
    			<option value="bg@americanone.com.br">American One Bento Gonçalves</option>
    			</select>
       
        <br />  
    	<p> 
    		Nome<br /> 
    		<input type="text" size="30" name="nome" required> 
    	</p>   
    	<p> 
    		E-mail<br /> 
    		<input type="text" size="30" name="email" required>		
    	</p>   
    	<p> 
    		Telefone<br /> 
    		<input type="text" size="35" name="telefone" required> 
    	</p>   
    	<p> 
    		Mensagem<br /> 
    		<input type="text" cols="1" rows="10" name="mensagem" required> 
    	</p>  
    	<p>
              <input type="submit" name="BTEnvia" value="Enviar"> 
    	</p>
    
        </fieldset>
        </form>

    O php está dessa forma:

     

    <?
    
    	require 'phpmailer/class.phpmailer.php';
    	require 'phpmailer/class.smtp.php';
    
    
    	$mail = new PHPMailer();
    
    	
    	$unidade	= $_POST["destinatarios"];
    	$nome		= $_POST["nome"];
    	$email		= $_POST["email"];
    	$telefone	= $_POST["telefone"];
    	$mensagem	= $_POST["mensagem"];
    	
    	$from		= 'contato@americanone.com.br';
    	$fromName	= 'American One';
    	
    	$host		= 'smtp.americanone.com.br';
    	$username 	= 'contato@americanone.com.br'; 
    	$password 	= 'xxxxxx';
    	$port		= '587';
    	$secure 	= '';
    	
    	$mail->isSMTP();
    	$mail->Host 		= $host;
    	$mail->SMTPDebug 	= 2;
    	$mail->SMTPAuth 	= true;
    	$mail->Username 	= $username;
    	$mail->Password 	= $password;
    	$mail->Port 		= $port;
    	$mail->SMTPSecure 	= $secure;	
    	
    	$mail->From 		= $from;
    	$mail->FromName 	= $fromName;
    	$mail->addReplyTo($from, $fromName);
    	
    	$mail->addAddress($dest, $fromname);
    	
    	$mail->IsHTML(true);
    	$mail->CharSet = 'utf-8';
    	$mail->WordWrap = 70;
    	
    	$mailer->Subject = 'Mensagem via contato do site' .date("d/m/Y");
    	$mailer->Body = "Nome = $nome \n" . "Email = $email \n" . "Telefone = $telefone \n" . "Mensagem = $mensagem \n";
    	
    	$send = $mail->Send();
    	if($send)
    		echo 'Sua mensagem foi enviada, obrigado!';
    	
    	else
    		echo 'Erro: ' . $mail->ErrorInfo;
    	
    	/*echo "<script>
        alert('Sua mensagem foi enviada, obrigado!');
        window.location.href='http://www.americanone.com.br';</script>";*/
    
    ?>

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    DiF    2.709

    @Patricia Serafin Pelo que eu vi ali no  $mail->addAddress($dest, $fromname); 

    Não existe esta variável "$dest".

     

    Por isso ele dá que o endereço é inválido.

    Outra coisa, que é mencionei anteriormente... você está utilizando uma VERSÃO antiga do phpmailer.

    Então você precisa entrar lá no site do Github que eu postei no meu post número #06  e baixar novamente a versão MAIS recente do phpmailer, porque algumas coisas mudaram.

     

    E este if no final...  sempre acostume-se a colocar delimitador de bloco.   com chaves ou com a sintaxe alternativa. Eu recomendo sempre usar a sintaxe alternativa para não confundir.

     

    exemplo:

    if($send):
    	echo 'Sua mensagem foi enviada, obrigado!';
    else:
    	echo 'Erro: ' . $mail->ErrorInfo;
    endif;

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Patricia Serafin    4
  • Autor do tópico
  • @DiF  eu baixei no site que mencionou e adaptei um exemplo. mas mesmo assim....:confused:

     

    2016-12-12 18:34:27	Invalid address: (addAnAddress Reply-To): 2016-12-12 18:34:27	Invalid address: (addAnAddress to): Erro: You must provide at least one recipient email address.

     

    adicionado 2 minutos depois

    @DiF dá uma olhada na bagunça kk

    <?
    
    require 'phpmailer/PHPMailerAutoload.php';
    
    $mail = new PHPMailer;
    
    $unidade	= $_POST["destinatarios"];
    $nome		= $_POST["nome"];
    $email		= $_POST["email"];
    $telefone	= $_POST["telefone"];
    $mensagem	= $_POST["mensagem"];
    
    $mail->	IsSMTP();
    $mail-> SMTPDebug = 2;
    $mail-> DebugOutput = 'html';
    
    $mail-> Host = "smtp.americanone.com.br";
    $mail-> Port = '587';
    
    $mail-> SMTPAuth = true;
    $mail-> usuário = "contato@americanone.com.br";
    $mail-> Password = "xxxxxx";
    
    $mail-> setFrom ('contato@americanone.com.br',' American One Idiomas');
    $mail-> addReplyTo ('');
    $mail-> addAddress ('');
    
    $mail-> Assunto = 'Mensagem de contato via site American One Idiomas';
    $mail-> Body = "Nome = $nome \n" . "Email = $email \n" . "Telefone = $telefone \n" . "Mensagem = $mensagem \n";
    
    $send = $mail->Send();
    	if($send){
    		echo 'Sua mensagem foi enviada, obrigado!';
    	}
    	else{
    		echo 'Erro: ' . $mail->ErrorInfo;
    	}
    
    ?>

     

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    DiF    2.709

    @Patricia Serafin Posta o seu código novo adaptado para a versão nova.

    Vamos debugar ele e tentar achar o erro.

    No aguardo.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    DiF    2.709

    @Patricia Serafin Pelo que eu vi:

    $mail-> addAddress ('');

    Esta linha está vazia.

     

    Informe o e-mail na qual para quem você vai mandar!

    No caso é este: 

    $unidade = $_POST["destinatarios"];

    Então seu código completo ficaria:

     

    <?php
    require 'phpmailer/PHPMailerAutoload.php';
    
    $mail = new PHPMailer;
    
    $unidade	= $_POST["destinatarios"];
    $nome		= $_POST["nome"];
    $email		= $_POST["email"];
    $telefone	= $_POST["telefone"];
    $mensagem	= $_POST["mensagem"];
    
    $body = "Nome = $nome <br/> 
             Email = $email </br> 
             Telefone = $telefone <br/> 
             Mensagem = $mensagem <br/>";
    
    $mail->IsSMTP();
    $mail->isHTML(true); 
    
    $mail->Host = "smtp.americanone.com.br";
    $mail->Port = '587';
    
    $mail->SMTPAuth = true;
    $mail->usuário = "contato@americanone.com.br";
    $mail->Password = "xxxxxx";
    
    $mail->setFrom ('contato@americanone.com.br',' American One Idiomas');
    $mail->addReplyTo ('');//esta linha só é requerida se você quer enviar uma resposta ao usuário.. 
    $mail->addAddress ($unidade);
    
    $mail->Assunto = 'Mensagem de contato via site American One Idiomas';
    $mail->Body = $body;
    
    $send = $mail->Send();
    	if($send){
    		echo 'Sua mensagem foi enviada, obrigado!';
    	}
    	else{
    		echo 'Erro: ' . $mail->ErrorInfo;
    	}
    
    ?>

    PS:  

    O simbolo " ->  " precisa estar colado a palavra.

    exemplo de errado:

     

    $mail-> isHTML(true);

     

    Exemplo de certo:

     

    $mail->isHTML(true);

     

    Editado por DiF

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    DiF    2.709

    entendi, agora o problema é de smtp.  veja se o arquivo  de classe smtp está contida na pasta do phpmailer que baixou.

    Verifique também se a porta utilizada é aquela.. a porta 587 é usada pelo gmail. 

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Patricia Serafin    4
  • Autor do tópico
  • sim consta class.phpmailer, class.smtp e a PHPMailerAutoLoad.

     

    estou lendo a wiki da github diz que neste caso devo acrescentar:

    $mail -> SMTPAuth  =  false ; 
    $mail -> SMTPSecure  =  false ;

     

    adicionado 0 minutos depois

    a locaweb exige a porta 587, então alterei em todas as class, estavam com 25

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    DiF    2.709

    @Patricia Serafin Tenta com estas opções,  pois elas desabilitam o modo segurança.

    Pode ser que seu host não forneça conexão segura  do smtp.

     

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    DiF    2.709

    @Patricia Serafin Este erro só acontece quando testa online?

    Testa o mesmo em localhost.

     

    Se precisar, faça um novo teste para fazer a autenticação pelo gmail( afim de testes só)

    Se funcionar com a autenticação segura do gmail, o problema pode estar no seu host..  na parte de e-mails.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Patricia Serafin    4
  • Autor do tópico
  • @DiF  bom dia!

     

    Depois de muito fuçar consegui resolver a questão, estou recebendo o email mas tem um porém.... após clicar no botão enviar aparece o seguinte, como resolvo isso???

     

    2016-12-14 12:45:34 Invalid address: (addAnAddress Reply-To): 2016-12-14 12:45:34 CLIENT -> SERVER: EHLO www.americanone.com.br 2016-12-14 12:45:34 CLIENT -> SERVER: STARTTLS 2016-12-14 12:45:34 CLIENT -> SERVER: EHLO www.americanone.com.br 2016-12-14 12:45:35 CLIENT -> SERVER: AUTH LOGIN 2016-12-14 12:45:35 CLIENT -> SERVER: Y29udGF0b0BhbWVyaWNhbm9uZS5jb20uYnI= 2016-12-14 12:45:35 CLIENT -> SERVER: Y250LUFPbmU= 2016-12-14 12:45:35 CLIENT -> SERVER: MAIL FROM: 2016-12-14 12:45:35 CLIENT -> SERVER: RCPT TO: 2016-12-14 12:45:35 CLIENT -> SERVER: DATA 2016-12-14 12:45:35 CLIENT -> SERVER: Date: Wed, 14 Dec 2016 10:45:34 -0200 2016-12-14 12:45:35 CLIENT -> SERVER: To: contato@americanone.com.br 2016-12-14 12:45:35 CLIENT -> SERVER: From: American One Idiomas 2016-12-14 12:45:35 CLIENT -> SERVER: Subject: 2016-12-14 12:45:35 CLIENT -> SERVER: Message-ID: <117bbbf39c6cb451df57d6d8eee904fa@www.americanone.com.br> 2016-12-14 12:45:35 CLIENT -> SERVER: X-Mailer: PHPMailer 5.2.17 (https://github.com/PHPMailer/PHPMailer) 2016-12-14 12:45:35 CLIENT -> SERVER: MIME-Version: 1.0 2016-12-14 12:45:35 CLIENT -> SERVER: Content-Type: text/html; charset=iso-8859-1 2016-12-14 12:45:35 CLIENT -> SERVER: Content-Transfer-Encoding: 8bit 2016-12-14 12:45:35 CLIENT -> SERVER: 2016-12-14 12:45:35 CLIENT -> SERVER: Nome = Copiersul 
    2016-12-14 12:45:35 CLIENT -> SERVER: Email = copiersul2@gmail.com 
    2016-12-14 12:45:35 CLIENT -> SERVER: Telefone = 5430552777 
    2016-12-14 12:45:35 CLIENT -> SERVER: Mensagem = Teste de validação! Recebe email de envio. 
    2016-12-14 12:45:35 CLIENT -> SERVER: 2016-12-14 12:45:35 CLIENT -> SERVER: . 2016-12-14 12:45:35 CLIENT -> SERVER: QUIT Sua mensagem foi enviada, obrigado!

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    DiF    2.709

    @Patricia Serafin Olá,  que bom que resolveu o problema,  o que fez para resolver?

     

    Isso tem cara de debug. posta o seu código atualizado para eu ver se existe a linha de debug que mostra esse "log"

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Patricia Serafin    4
  • Autor do tópico
  • <?php
    require 'phpmailer/PHPMailerAutoload.php';
    
    $mail = new PHPMailer;
    
    $unidade = $_POST["unidade"];
    $nome = $_POST["nome"];
    $email = $_POST["email"];
    $telefone = $_POST["telefone"];
    $mensagem = $_POST["mensagem"];
    
    $body = "Nome = $nome <br/> 
             Email = $email <br/> 
             Telefone = $telefone <br/> 
             Mensagem = $mensagem <br/>";
    
    $mail->IsSMTP();
    $mail->isHTML(true); 
    $mail->SMTPDebug = 1;
    
    $mail->Host = "pop.americanone.com.br";
    $mail->Port = '587';
    
    $mail->SMTPAuth = true;
    $mail->Username = "contato@americanone.com.br";
    $mail->Password = "xxxxxx";
    
    $mail->setFrom ('contato@americanone.com.br',' American One Idiomas');
    $mail->addReplyTo ('');//esta linha só é requerida se você quer enviar uma resposta ao usuário.
    $mail->addAddress ($unidade);
    
    $mail->Subject = 'Mensagem de contato via site American One Idiomas';
    $mail->Body = $body;
    
    $send = $mail->Send();
    	if($send){
    		echo 'Sua mensagem foi enviada, obrigado!';
    	}
    	else{
    		echo 'Erro: ' . $mail->ErrorInfo;
    	}
    
    ?>

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    DiF    2.709

    @Patricia Serafin  Esta linha:

     

    $mail->SMTPDebug = 1;

    Retire-a e vê se resolve o problema do log indesejado :)

    Em tempo,  o que você mudou para funcionar? 

    foi o  $mail->host ?   que antes era  smtp.americanone e agora ficou com pop.americanone ?

     

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Patricia Serafin    4
  • Autor do tópico
  • @DiF

     

    No PHP alterei o seguinte:

     

    Entrei em contato com a Locaweb e haviam trocado o host de smtp.americanone.com.br para pop....

    $mail->Host = "pop.americanone.com.br";

    este trecho estava desta forma:

    $mail->setFrom = ('contato@americanone.com.br',' American One Idiomas');
    $mail->addReplyTo = ('');//esta linha só é requerida se você quer enviar uma resposta ao usuário.
    $mail->addAddress = ($unidade);

    agora ficou assim:

    $mail->setFrom ('contato@americanone.com.br',' American One Idiomas');
    $mail->addReplyTo ('');//esta linha só é requerida se você quer enviar uma resposta ao usuário.
    $mail->addAddress ($unidade);

     

    No Html estava desta forma:

    			<input type="hidden" name="unidades" id="unidades" value="" />
    			<label for="destinatarios"></label>
    			<select name="destinatarios" id="destinatarios">
    			<option value=""> --UNIDADES-- </option>

    agora ficou assim:

    			<input type="hidden" name="unidade" id="unidade" value="" />
    			<label for="form_id"></label>
    			<select name="unidade" id="unidade">
    			<option value="unidade"> --UNIDADES-- </option>

    e retirei a linha:

    $mail->SMTPDebug = 1;

    Está funcionando legal! :thumbsup:

    Obrigada meeeesmo!!!

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    DiF    2.709

    @Patricia Serafin 

    Obrigado por compartilhar a sua solução, com certeza será  de grande ajuda aos demais que estiverem com esta dúvida. :thumbsup:

     

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×