Ir para conteúdo

Arquivado

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

pulao

[Resolvido] PHPmailer com erro

Recommended Posts

boa tarde estou usando a funcao phpmailer e estou recebendo alguns erros

uso o wamp server e recebo essas linhas de erro

 

estou conectando com o gmail para disparar o email

 

SMTP Error: Could not connect to SMTP host

 

o codigo esta dessa forma

 

$mail->Host = "smtp.gmail.com"; // Endereço do servidor SMTP

$mail->SMTPAuth = true; // Usa autenticação SMTP? (opcional)

$mail->Username = 'xxxxxx@gmail.com'; // meu email do gmail

$mail->Password = 'senha do gmail'; // minha senha do gmail

$mail->Port = 587;

 

desde ja agradeço

Compartilhar este post


Link para o post
Compartilhar em outros sites

isso!!!

 

eu preciso mudar alguma coisa no php.ini ???

Compartilhar este post


Link para o post
Compartilhar em outros sites

pesquisei por isso to na duvida se preciso mudar algo no php.ini

Compartilhar este post


Link para o post
Compartilhar em outros sites

É necessário sim...

 

estou usando o WAMP

 

esta acontecendo isso agora -> Warning: fsockopen() [function.fsockopen]: unable to connect to localhost:25

Informações do erro:

SMTP Error: Could not connect to SMTP host.

 

 

o codigo dessa forma

// Configuração de SMTP

$email->Host = "smtp.gmail.com";

$email->SMTPAuth = true;

$mail->SMTPSecure = "tls";

$mail->SMTP_PORT = "587";

$email->Username = "meu usuario sem o @gmail.com";

$email->Password = "senha";

$mail->SMTPDebug = true;

 

 

$mail->From = "meuemail@gmail.com";

 

e alterei o php ini

 

[mail function]

; For Win32 only.

SMTP = smtp.gmail.com

smtp_port = 587

 

; For Win32 only.

;sendmail_from = meuemail@gmail.com

 

e descomentei a linha do php_openssl.dll

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora recebo essa resposta

Warning: stream_socket_enable_crypto() [streams.crypto]: this stream does not support SSL/crypto in C:\wamp\www\Sistema Biblioteca\phpmailer\class.smtp.php on line 194

 

meu codigo esta dessa forma

 

$mail = new PHPMailer();

 

$mail->SetLanguage("br", "libs/"); // ajusto a lingua a ser utilizadda

$mail->SMTP_PORT = "587"; // ajusto a porta de smt a ser utilizada. Neste caso, a 587 que o GMail utiliza

$mail->SMTPSecure = "tls"; // ajusto o tipo de comunicação a ser utilizada, no caso, a TLS do GMail

 

$mail->IsSMTP(); // ajusto o email para utilizar protocolo SMTP

$mail->Host = "smtp.gmail.com"; // especifico o endereço do servidor smtp do GMail

$mail->SMTPAuth = true;

 

e o php.ini esta assim

openssl habilitado

 

 

[mail function]

; For Win32 only.

;SMTP = smtp.gmail.com

;smtp_port = 25

 

; For Win32 only.

;sendmail_from = teste@gmail.com

Compartilhar este post


Link para o post
Compartilhar em outros sites

Teu host está errado, gmail não usa smtp.gmail.com ele usa conexão segura, você tem que habilitar ssl e informar a porta

 

No teu codigo inicial #1

$mail->Host = "smtp.gmail.com"; // Endereço do servidor SMTP
$mail->SMTPAuth = true; // Usa autenticação SMTP? (opcional)

Troque para:

$mail->IsSMTP(); // envia por SMTP
$mail->Host = "ssl://smtp.gmail.com:465"; // SMTP servers
$mail->SMTP_PORT = "587"; 
$mail->SMTPAuth = true; // Caso o servidor SMTP precise de autenticação

 

:thumbsup:

Compartilhar este post


Link para o post
Compartilhar em outros sites

alterei conforme você indicou e aparece o seguinte erro...

 

Warning: fsockopen() [function.fsockopen]: unable to connect to ssl://smtp.gmail.com:465 (Unable to find the socket transport "ssl" - did you forget to enable it when you configured PHP?) in C:\wamp\www\Sistema Biblioteca\phpmailer\class.smtp.php on line 122

Não foi possível enviar o e-mail.

 

Informações do erro:

SMTP Error: Could not connect to SMTP host.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora coloca o codigo inteiro da tua página que você modificou que você está instanciando a classe phpmailer...

Pq no caso ele está falando que nao foi possivel se conectar com o servidor...

Compartilhar este post


Link para o post
Compartilhar em outros sites

$mail = new PHPMailer();

 

$mail->IsSMTP(); // ajusto o email para utilizar protocolo SMTP

$mail->SetLanguage("br", "libs/"); // ajusto a lingua a ser utilizadda

$mail->Host = "ssl://smtp.gmail.com:465";

$mail->SMTP_PORT = "587"; // ajusto a porta de smt a ser utilizada. Neste caso, a 587 que o GMail utiliza

$mail->SMTPSecure = "tls"; // ajusto o tipo de comunicação a ser utilizada, no caso, a TLS do GMail

$mail->SMTPAuth = true; // ativo a autenticação SMTP, no caso do GMail, é necessário

 

 

$mail->Username = "p"; // Usuário SMTP do GMail

$mail->Password = "ad"; // Senha do usuário SMTP do GMail

 

 

 

// Define o remetente

// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

$mail->From = "p@gmail.com"; // Seu e-mail

$mail->FromName = "p@gmail.com"; // Seu nome

 

// Define os destinatário(s)

// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

$mail->AddAddress('p_@hotmail.com', 'paulo');

//$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

// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

$mail->IsHTML(true); // Define que o e-mail será enviado como HTML

//$mail->CharSet = 'iso-8859-1'; // Charset da mensagem (opcional)

 

// Define a mensagem (Texto e Assunto)

// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

$mail->Subject = "Emprestimo BiblioUni"; // Assunto da mensagem

$mail->Body = "Você está recebendo essa mensagem para notificar que você realizou um emprestimo e para mante-lo informado sobre a data de devolução, em <b>HTML</b>! <br />";

$mail->AltBody = "Em caso de dúvida entre em contato pelo email duvidas@.com.br! ";

 

// Define os anexos (opcional)

// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

//$mail->AddAttachment("c:/temp/documento.pdf", "novo_nome.pdf"); // 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 sucesso!";

} else {

echo "Não foi possível enviar o e-mail.<br /><br />";

echo "<b>Informações do erro:</b> <br />" . $mail->ErrorInfo;

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

você não está incluindo a biblioteca phpmailer ?

 

require_once 'phpmailer/class.phpmailer.php';

$mail = new PHPMailer();

$mail->IsSMTP(); // ajusto o email para utilizar protocolo SMTP
$mail->SetLanguage("br", "libs/"); // ajusto a lingua a ser utilizadda

// Restante do codigo ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

esttá mais acima no codigo....

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora nao aparece erro como o anterior aparece que nao foi possivel enviar e essa mensagem SMTP Error: Could not connect to SMTP host.

 

modifiquei o php.ini a extensao php_openssl.dll esta descomentada, queria saber se preciso ir na função mail e modificar alguma coisa nela, la esta default ->

[mail function]

; For Win32 only.

SMTP = localhost

smtp_port = 25

 

; For Win32 only.

;sendmail_from = me@example.com

Compartilhar este post


Link para o post
Compartilhar em outros sites

Kra acabei de testar o teu codigo aqui no meu servidor(inclui apenas a classe phpmailer.class.php), só alterei o usuario/senha e os e-mails e funcionou perfeitamente.

 

 

o meu direto tipo você copiou?

 

o meu ainda da: SMTP Error: Could not connect to SMTP host.

qual devo usar desses dois blocos ou o que ha de errado com eles

 

$mail->Host = "smtp.gmail.com";

$mail->PORT = "465"; // ajusto a porta de smt a ser utilizada. Neste caso, a 587 que o GMail utiliza

$mail->SMTPSecure = "SSL"; // ajusto o tipo de comunicação a ser utilizada, no caso, a TLS do GMail

$mail->SMTPAuth = true; // ativo a autenticação SMTP, no caso do GMail, é necessário

 

/*

$mail->Host = "ssl://smtp.gmail.com:465";

$mail->SMTP_PORT = "587"; // ajusto a porta de smt a ser utilizada. Neste caso, a 587 que o GMail utiliza

$mail->SMTPSecure = "TLS"; // ajusto o tipo de comunicação a ser utilizada, no caso, a TLS do GMail

$mail->SMTPAuth = true; // ativo a autenticação SMTP, no caso do GMail, é necessário

*/

 

$mail->Username = "meuemail@gmail.com"; // Usuário SMTP do GMail

$mail->Password = "minhasenha"; // Senha do usuário SMTP do GMail

 

// Define o remetente

// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

$mail->From = "meuemail@gmail.com"; // Seu e-mail

$mail->FromName = "PAULO"; // Seu nome

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resolvido aki, fiz o seguinte pra deixar bem claro, fui no php.ini e descomentei a linha openssl.dll depois fui ate o diretorio do apache e descomentei uma linha igual openssl.dll reiniciei os serviços e funcionou normalmente.

estou usando o wamp server

 

valeu pela ajuda ate mais

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.