I'm using PHPMailer to send message via form, but it's not working. I wonder where I'm going wrong. Remember that the email that will receive the form information is Gmail. Follow my code for better understanding.
HTML:
<form id="main-contact-form" name="contact-form" action="mail.php" method="post">
<div class="row wow fadeInUp" data-wow-duration="1000ms" data-wow-delay="300ms">
<div class="col-sm-6">
<div class="form-group">
<input type="text" name="name" class="form-control" placeholder="Nome" required="required">
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<input type="email" name="email" class="form-control" placeholder="E-mail" required="required">
</div>
</div>
</div>
<div class="form-group">
<input type="text" name="subject" class="form-control" placeholder="Assunto" required="required">
</div>
<div class="form-group">
<textarea name="message" id="message" class="form-control" rows="4" placeholder="Escreva sua Mensagem" required="required"></textarea>
</div>
<div class="form-group">
<button type="submit" class="btn-submit">Enviar</button>
</div>
</form>
PHP:
<?php
$Nome = $_POST["name"]; // Pega o valor do campo Nome
$Email = $_POST["email"]; // Pega o valor do campo Telefone
$Assunto = $_POST["subject"]; // Pega o valor do campo Email
$Mensagem = $_POST["message"]; // 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\nAssunto: $Assunto\n\nMensagem: $Mensagem\n";
date_default_timezone_set('Etc/UTC');
require_once("phpmailer/class.phpmailer.php");
define('GUSER', '[email protected]'); // <-- Insira aqui o seu GMail
define('GPWD', 'senhaaaa'); // <-- 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 = 2; // 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 = 465; // 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),
if (smtpmailer('[email protected]', '[email protected]', 'renata', '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;
?>
Folder Hierarchy:
TECMOV
- css/
- fonts/
- images/
- js/
- phpmailer/
- index.php
- mail.php