Criação de Sites
Desenvolvimento de Sistemas
(41) 3524-2810
contato@gn10.com.br

Envie emails via PHP e SMTP utilizando o GMail ou o Google Apps

Por: Caciano Gabriel

Uma das maneiras mais seguras de enviar emails é via SMTP e ao utilizar o GMail / Google Apps você minimiza os riscos de um servidor instável não entregar sua mensagem e também assegura velocidade de envio.

Para criar um formulário de contato em seu site siga este pequeno tutorial

1. Faça o Download do PHPMailer:

http://code.google.com/a/apache-extras.org/p/phpmailer/downloads/list

2. Extraia os arquivos do PHPMailer:

Após extrair os arquivos renomeie a pasta para phpmailer, assim facilitamos a taxonomia dos caminhos até os arquivos.

3. Crie um formulário HTML. Abaixo um exemplo com alguns campos:

<form action="email.php" method="post">
	<label for="Nome">Nome:</label>
	<input type="text" name="Nome" size="35" />

	<label for="Email">E-mail:</label>
	<input type="text" name="Email" size="35" />

	<label for="Fone">Telefone:</label>
	<input type="text" name="Fone" size="35" />

	<label for="Mensagem">Mensagem:</label>
	<textarea name="Mensagem" rows="8" cols="40"></textarea>

	<input type="submit" name="Enviar" value="Enviar" />
</form>

4. Crie um arquivo chamado email.php com o código abaixo:

<?php
$Nome		= $_POST["Nome"];	// Pega o valor do campo Nome
$Fone		= $_POST["Fone"];	// Pega o valor do campo Telefone
$Email		= $_POST["Email"];	// Pega o valor do campo Email
$Mensagem	= $_POST["Mensagem"];	// Pega os valores do campo Mensagem

// Variável que junta os valores acima e monta o corpo do email

$Vai 		= "Nome: $Nome\n\nE-mail: $Email\n\nTelefone: $Fone\n\nMensagem: $Mensagem\n";

require_once("phpmailer/class.phpmailer.php");

define('GUSER', 'enviador@gmail.com');	// <-- Insira aqui o seu GMail
define('GPWD', 'senha');		// <-- Insira aqui a senha do seu GMail

function smtpmailer($para, $de, $de_nome, $assunto, $corpo) { 
	global $error;
	$mail = new PHPMailer();
	$mail->IsSMTP();		// Ativar SMTP
	$mail->SMTPDebug = 0;		// Debugar: 1 = erros e mensagens, 2 = mensagens apenas
	$mail->SMTPAuth = true;		// Autenticação ativada
	$mail->SMTPSecure = 'ssl';	// SSL REQUERIDO pelo GMail
	$mail->Host = 'smtp.gmail.com';	// SMTP utilizado
	$mail->Port = 587;  		// A porta 587 deverá estar aberta em seu servidor
	$mail->Username = GUSER;
	$mail->Password = GPWD;
	$mail->SetFrom($de, $de_nome);
	$mail->Subject = $assunto;
	$mail->Body = $corpo;
	$mail->AddAddress($para);
	if(!$mail->Send()) {
		$error = 'Mail error: '.$mail->ErrorInfo; 
		return false;
	} else {
		$error = 'Mensagem enviada!';
		return true;
	}
}

// Insira abaixo o email que irá receber a mensagem, o email que irá enviar (o mesmo da variável GUSER), 
o nome do email que envia a mensagem, o Assunto da mensagem e por último a variável com o corpo do email.

 if (smtpmailer('recebedor@dominio.com.br', 'enviador@gmail.com', 'Nome do Enviador', 'Assunto do Email', $Vai)) {

	Header("location:http://www.dominio.com.br/obrigado.html"); // Redireciona para uma página de obrigado.

}
if (!empty($error)) echo $error;
?>

Pronto, agora salve o arquivo com o formulário HTML e o enviar.php

Lembre-se que estes 2 arquivos deverão estar fora da pasta phpmailer no exemplo acima, mas caso deseje você pode alterar os nomes dos arquivos e pastas, apenas atente-se para estas duas partes do código:

<form action="email.php" method="post">

e

require_once("phpmailer/class.phpmailer.php");

Caso você utilize WordPress ou Magento, utilize os plugins abaixo:

WordPress » WP Mail SMTP 

Magento » ASchroder.com SMTP Pro Email

Comentários

comentário(s)

Pesquisar

Assuntos

Facebook