I am trying to create an HTML Form to send emails via PHP and SMTP using GMail or Google Apps. I am using the "phpmailer" and the folder is named as "phpmailer". I am on my domain, using the cpanel, and all the files are on it (index.html, email.php and phpmailer folder.
Here is the index.html with the form:
<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>
and here is the email.php:
<?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
E-mail: $Email
Telefone: $Fone
Mensagem:
$Mensagem
";
require_once("phpmailer/class.phpmailer.php");
define('GUSER', 'contato@servinfo.net'); // <-- Insira aqui o seu GMail
define('GPWD', 'password'); // <-- 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('matheus321ms@gmail.com', 'contato@servinfo.net', 'Nome do Enviador', 'Assunto do Email', $Vai)) {
Header("location:https://servinfo.net/obrigado.html"); // Redireciona para uma página de obrigado.
}
if (!empty($error)) echo $error;
?>
and this error is being shown: "Mail error: The following From address failed: contato@servinfo.net : Called Mail() without being connected"
What do I do?