Jump to content
wneo

PHPmailer - liberar segurança no gmail

Recommended Posts

Olá!

 

Pessoal, estou utilizando o phpMailer para envio de email. O gmail está com uma segurança automática que evita o recebimento. Então fica necessário que o usuário modifique essa configuração para liberar o recebimento.

 

Vocês sabem alguma forma de configurar o código pra evitar isso automaticamente?

	$mail = new PHPMailer();
	$mail2 = new PHPMailer();

	/* ................................ Receber solicit ................................... */    
    
	$mail->Username = "email"; // your GMail user name
    $mail->Password = "senha"; 
	
    $mail->AddAddress("email","Tesste"); // recipients email
   
    $mail->FromName = $email;	 // readable name

    $mail->Subject = $nome;
	$mail->isHTML(true);
    $mail->Body    = $receber_solicit; 
	
    //-----------------------------------------------------------------------

    $mail->Host = "smtp.gmail.com"; // GMail
    $mail->Port = 587;
    $mail->IsSMTP(); // use SMTP
    $mail->SMTPAuth = true; // turn on SMTP authentication
    $mail->From = $mail->Username;
    if(!$mail->Send())
        echo "Mailer Error: " . $mail->ErrorInfo;
    else
        echo "Mensagem enviada";
	
	/* ............................... /Receber solicit ................................... */    
	
	/* ********************************************************************* */    
	
	/* ............................... Enviar resposta ................................... */    
	
	$mail2->Username = "email"; // your Gmail2 user name
    $mail2->Password = "senha"; 
	
    $mail2->AddAddress($email); // recipients email2	
   
    $mail2->FromName = 'Empresa';	 // readable name

    $mail2->Subject = 'Agradecemos o seu contato!';
	$mail2->isHTML(true);
    $mail2->Body    = $enviar_resposta_auto; 
	
    //-----------------------------------------------------------------------

    $mail2->Host = "smtp.gmail.com"; // Gmail2
    $mail2->Port = 587;
    $mail2->IsSMTP(); // use SMTP
    $mail2->SMTPAuth = true; // turn on SMTP authentication
    $mail2->From = $mail2->Username;
    if(!$mail2->Send())
        echo "mailer Error: " . $mail2->ErrorInfo;
    else
        echo "Mensagem enviada";
	
	/* .............................. /Enviar resposta ................................... */    

 

Share this post


Link to post
Share on other sites
4 horas atrás, gabrieldarezzo disse:

Da uma olhada nisso:

imap.png

Sim.. nesse caso o usuário acessando sua configuração e alterando manualmente..

gostaria de uma solução no código, para que o usuário não tivesse essa necessidade..

Share this post


Link to post
Share on other sites

Ainda n entendi então.

O problema seria o disparo do e-mail?

Ou chegando no gmail das pessoas em categorias como 'Anuncios' - 'Spam'?

Share this post


Link to post
Share on other sites
2 horas atrás, gabrieldarezzo disse:

Ainda n entendi então.

O problema seria o disparo do e-mail?

Ou chegando no gmail das pessoas em categorias como 'Anuncios' - 'Spam'?

Quando chega no gmail.

Em sua primeira vez, fica uma mensagem na caixa de entrada, como se alguem estivesse tentando invadir..

Então você libera nas configurações e envio normaliza...

Queria evitar essa necessidade por parte do usuário ter que fazer essa manobra.. e sim o código já resolver a comunicação com o gmail...

Share this post


Link to post
Share on other sites

Eu continuo em dúvida.

 

Você está disparando pelo Gmail?

Já olhou a documentação do PHP Mailer a respeito de disparo pelo Gmail?

Parece q tem uma área especialmente pra isso.

 

Share this post


Link to post
Share on other sites
Em 20/04/2017 at 19:29, gabrieldarezzo disse:

Eu continuo em dúvida.

 

Você está disparando pelo Gmail?

Já olhou a documentação do PHP Mailer a respeito de disparo pelo Gmail?

Parece q tem uma área especialmente pra isso.

 

Disparo através de um site web...

Com objetivo de receber o conteudo em uma caixa de entrada gmail...

Share this post


Link to post
Share on other sites

Você está disparando pelo Gmail?

 

 

SIM??

Não?



 

Deixa eu reformular a pergunta...

 

Você está disparando por um EMAIL do Gmail utilizando o seu site?

 

Já olhou a documentação do PHP Mailer a respeito de disparo pelo Gmail?

Share this post


Link to post
Share on other sites

A partir de dezembro de 2014, o Google começou a impor um mecanismo de autenticação chamado XOAUTH2 baseado no OAuth2 para acesso a seus aplicativos, incluindo o Gmail. (Fonte)
 

A maneira mais fácil de permitir que o PHPMailer utilize o SMTP do Gmail é dando permissão de acesso para "aplicativos menos seguros". Basta seguir esse tutorial.
 

A partir da versão 5.2.11, o PHPMailer passou a aceitar autenticação XOAUTH2, porém necessita da versão 5.5 ou superior do PHP. Caso prefira, é só seguir esse tutorial (em inglês).

 

  • +1 2

Share this post


Link to post
Share on other sites
Em 27/04/2017 at 14:57, gabrieldarezzo disse:

Você está disparando pelo Gmail?

 

 

SIM??

Não?



 

Deixa eu reformular a pergunta...

 

Você está disparando por um EMAIL do Gmail utilizando o seu site?

 

Já olhou a documentação do PHP Mailer a respeito de disparo pelo Gmail?

 ------------------------------------------------------------------------------------------

*Sim, disparando por um email do Gmail utilizando meu site.

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Marcosvn
      Eu quero criar por conta própria app de jogos de cartas, como: tranca, buraco, truco, etc.
       
      Já que meu objetivo é apenas jogos de cartas, o que eu devo aprender para conseguir colocar isso em prática ?
    • By DinhoPHP
      Estou tentando enviar um anexo e o mesmo não chega no email, apenas quando não faço uso da função attach.
      arquivo que contém as functions responsáveis pelo envio do email.
      public function attach(string $filePath, string $fileName): Email{ $this->data->attach[$filePath] = $fileName; return $this; } Arquivo que utiliza a função attach.
      No arquivo que captura os dados do formulário, já passei os parâmetros de tudo quanto é jeito.
      require __DIR__ . "/include/head.php"; require __DIR__ . "/vendor/autoload.php"; use Source\Support\Email; $email = new Email(); // CAPTURANDO DADOS DO FORMULÁRIO $nome = trim(ucwords(preg_replace('/\s\s+/', ' ',($_POST['nome-curriculo'])))); $eemail = trim(strtolower(preg_replace('/\s\s+/', ' ',($_POST['email-curriculo'])))); $telefone = trim(preg_replace('/\s\s+/', ' ',($_POST['telefone-curriculo']))); $cidade = trim(preg_replace('/\s\s+/', ' ',($_POST['cidade-curriculo']))); $assunto = trim(preg_replace('/\s\s+/', ' ',($_POST['assunto-curriculo']))); $mensagem = trim(preg_replace('/\s\s+/', ' ',("<pre>".$_POST['mensagem-curriculo']."</pre>"))); // $file_tmp = ($_FILES['file'], $_POST['name']); $files = $_FILES['curriculo']; $email->add($assunto, "<h3>Nome: {$nome}<br>{$files['name']}<br>Email: {$eemail}<br><br>Telefone: {$telefone}<br><br>Cidade: {$cidade}<br><br></br>Mensagem:<br>{$mensagem}</h3>", $nome, $eemail)->attach($files['tmp_name'], $files['name'])->send(); var_dump($files); A função attach que recebe dois parâmetros, quando utilizada, não envia o anexo vindo do form HTML, já digitando os parâmetros na função, ela envia o anexo. Já li até alguns casos semelhantes aqui mesmo e nada! Só envia o anexo digitando os parâmetros manualmente. 
    • By BielBagda
      Boa tarde, estou tentando fazer com que uma planilha seja enviada via email com php mailer
      porém está informando 500 Internal Server Error ao clicar em enviar
       
      código

       
       
    • By Chirlison
      Olá a todos!
      Estou utilizando a biblioteca phpmailer para enviar emails autenticados através do formulário de contato do meu site.
      O problema é que o remetente da mensagem aparece sendo meu próprio email.
      Eu gostaria de saber se é possível alguém enviar um email preenchido pelo formulário de contato no site e chegasse na minha caixa de e-mail como remetente o email do usuário que preencheu o formulário de contato no site e não o email de autenticação?
      Desde já, agradeço a todos que puderem ajudar!
    • By Amayamethew
      Eu tenho 5 contas em nuvem do Office 365. Quero fechar dois deles, mas antes disso, quero fazer backup dos meus e-mails importantes da conta do Office 365. Verifiquei as soluções manuais, mas as achei difíceis. Existe alguém que possa me sugerir uma solução simples e rápida para fazer backup dos emails do Office 365?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.