diegoramos
(usa Debian)
Enviado em 18/09/2008 - 16:46h
Boa tarde a todos ,
Estou tendo certa,dificuldade com a resolução de um problema,se puderem me ajudar. =]
O meu objetivo é criar uma pagina que colete dados,que serão usados para enviar um email,porem esse email tera que ser autenticado.Vi diversas paginas na internet que comentam algo sobre essa situação até me deparar com a classe phpmailer.
Bem,baixei ela e estou dando uma olhada,achei bem completa,porem não tenho conseguido realizar meu objetivo,até o devido momento tenho o seguinte erro abaixo:
_______________________________________________
Warning: fsockopen(): php_network_getaddresses: getaddrinfo failed: Name or service not known in /var/www/ramos/ProjetoMailer/phpmailer/class.smtp.php on line 101
Warning: fsockopen(): unable to connect to :465 in /var/www/ramos/ProjetoMailer/phpmailer/class.smtp.php on line 101
Houve um erro ao enviar email!
Language string failed to load: connect_host
_______________________________________________
Abaixo segue os fontes do arquivos que estou utilizando :
---------------------------------------------
Codigo do html :
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Formulario para Email rapido</title>
</head>
<body>
<form id="form1" name="form1" method="post" action="enviar_contato.php">
<center> <h4> Informe seus Dados abaixo : </h4> </center>
<table width="500" border="0" cellspacing="2" cellpadding="5">
<tr>
<td>Nome -> </td>
<td><input name="nome" type="text" id="nome" /></td>
</tr>
<tr>
<td>Assunto -> </td>
<td><input name="assunto" type="text" id="assunto" /></td>
</tr>
<tr>
<td>E-mail Remetente -> </td>
<td><input name="email" type="text" id="email" /></td>
</tr>
<tr>
<td> Endereço do Servidor SMTP do seu Provedor -> </td>
<td><input name="smtp" type="text" id="smtp" />( ex:. <i>smtp.globo.com</i> )</td>
</tr>
<tr>
<td> Seu usuario no provedor informado -> </td>
<td><input name="user" type="text" id="usuario" />( ex:. <i> sige@globo.com</i> )</td>
</tr>
<tr>
<td> Sua senha no provedor informado -> </td>
<td><input name="user" type="password" id="senha" /></td>
</tr>
<tr>
<td> E-mail Destinatário -> </td>
<td><input name="dest" type="text" id="dest" /></td>
<tr>
</tr>
<tr>
<td>Mensagem --> </td>
<td><textarea name="mensagem" cols="35" rows="10" id="mensagem"></textarea></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="Submit" value="Enviar Mensagem"></td>
</tr>
<tr>
<td>
</table>
</form>
</body>
</html>
---------------------------------------------
---------------------------------------------
Codigo fonte do enviar_contato.php
<?php
/* Enviar E-mail */
include("/var/www/ramos/ProjetoMailer/phpmailer/class.phpmailer.php");
include("/var/www/ramos/ProjetoMailer/phpmailer/class.smtp.php");
//instancia a objetos
$mail = new PHPMailer();
// mandar via SMTP
$mail->IsSMTP();
// Seu servidor smtp
$mail->host = "$smtp";
// habilita smtp autenticado
$mail->SMTPAuth = true;
// usuário deste servidor smtp
$mail->Username = "$usuario"; // Usuario
$mail->Password = "$senha"; // senha
//email utilizado para o envio(remetente)
//pode ser o mesmo de username
$mail->From = "$recebemail";
$mail->FromName = "$nome";
//Enderecos que devem ser enviadas as mensagens
$mail->AddAddress("$recebedest");
// Setando Dados para conexao
$mail->Port = 465;
// wrap seta o tamanho do texto por linha
$mail->WordWrap = 50;
$mail->IsHTML(true); //enviar em HTML
// recebendo os dados do formulario
if(isset($_POST['nome'])){
$nome = ucwords($_POST['nome']);
$recebeassunto = $_POST['assunto'];
$recebemail = $_POST['email'];
$recebesmtp = $_POST['smtp'];
$recebeuser = $_POST['usuario'];
$recebesenha = $_POST['senha'];
$recebedest = $_POST['dest'];
$recebemensagem = $_POST['mensagem'];
// informando a quem devemos responder
//ou seja para o mail inserido no formulario
$mail->AddReplyTo("$recebemail","$nome");
// Definindo os cabeçalhos do e-mail
$headers = "Content-type:text/html; charset=iso-8859-1";
// Definindo destinatário do email.
$para = "$recebedest";
// Definindo o aspecto da mensagem
$mensagem = "";
$mensagem .= "<h3>De:$recebemail</h3> ";
$mensagem .= $recebenome . $recebemail;
$mensagem .= "<h3>Mensagem</h3>";
$mensagem .= $recebemsg;
}
$mail->Subject = "$recebeassunto";
// Adicionando o html no corpo do email
$mail->Body = $mensagem;
// Enviando a mensagem para o destinatário,retornando status de envio
if(!$mail->Send())
{
echo "<P>Houve um erro ao enviar email! </P>".$mail->ErrorInfo;
$mail->ErrorInfo;
exit;
}
echo "<P>Mensagem enviado...OK!";
?>
______________________________________________
Não coloquei o source do class.smtp.php e do class.phpmailer.php,pois creio que ficaria um "pouco" enorme. ;) hehe
Agradeço desde já a atenção! =D