PHP联系表格与网络解决方案

时间:2014-01-25 16:39:42

标签: php contact-form

在Network Solutions共享主机软件包上使用https://github.com/PHPMailer/PHPMailer建立一个基本联系表单。

// start the mail request basics
$mail = new PHPMailer(); // create a new object
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 1; // debugging: 1 = errors and messages, 2 = messages only
$mail->Debugoutput = 'html';
$mail->SMTPAuth = true; // authentication enabled
$mail->Host = 'ssl://smtp.gmail.com';
$mail->Port = 587;
$mail->IsHTML(true);
$mail->Username = 'my_gmail_account@gmail.com';
$mail->Password = '*******';

一切正常在本地(在我的计算机上)和表单发送电子邮件,但当我上传这个php文件到我们的网络解决方案托管我得到以下错误。

SMTP ERROR: Failed to connect to server: Connection timed out (110)
SMTP connect() failed.

我的邮件设置有问题吗?其他人在网络解决方案共享主机上使用PHP邮件获得了成功吗?

3 个答案:

答案 0 :(得分:2)

网络解决方案会阻止发送邮件所需的多个端口,包括gmail所需的端口。

如果有人找到替补,请告诉我。

目前,使用虚拟帐户并使用标准PHP邮件程序然后转发邮件。

答案 1 :(得分:0)

您可以像这样更改配置选项。

$mail = new PHPMailer(); 
$mail->IsSMTP();
$mail->SMTPDebug = 1;
$mail->SMTPAuth = true;
$mail->SMTPSecure = 'ssl';
$mail->Host = "smtp.gmail.com";
$mail->Port = 587;
$mail->IsHTML(true);
$mail->Username = "my_gmail_account@gmail.com";
$mail->Password = "********";
$mail->SetFrom("somemail@gmail.com");
$mail->Subject = "Testing the New Config";
$mail->Body = "Hey there !";

答案 2 :(得分:0)

我让它使用这些设置:

{{1}}

您必须为您拥有的域名使用网络解决方案支付电子邮件地址。您可以通过登录邮箱来查看主机和端口(mail.mydomain.com) - >右上角菜单 - >设置 - >邮件 - >邮件和社交帐户 - >电子邮件(编辑) - >传出服务器(SMTP)。我使用此PHP Mailer Documentation作为此解决方案的线索。