我正在尝试创建HTML表单,以使用GMail或Google Apps通过PHP和SMTP发送电子邮件。我正在使用“ phpmailer”,该文件夹名为“ phpmailer”。我在使用cpanel的域中,并且所有文件都在上面(index.html,email.php和phpmailer文件夹。
这是index.html,格式为:
<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>
这是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\n\nE-mail: $Email\n\nTelefone: $Fone\n\nMensagem:
$Mensagem\n";
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;
?>
,并且显示此错误: “邮件错误:以下“发件人”地址失败:contato@servinfo.net:未连接就调用了Mail()”
我该怎么办?