我有点卡在这里。我在TSOHosts上托管了一些网站。我使用php mail()函数发送临时电子邮件,例如从联系表中。 电子邮件已停止工作,托管服务提供商似乎没有人能够修复它。 他们说我应该使用SMTP电子邮件。好的,我明白了,他们指出了这篇关于如何执行此操作的文章: https://www.lifewire.com/send-email-from-php-script-using-smtp-authentication-and-ssl-1171197
所以我写了下面的脚本,它不起作用:
require_once "Mail.php";
$from = "NoReply@mysite.org.uk";
$to = "me@myemailaddress.co.uk";
$subject = "Hi port 465";
$body = "Hello World";
$host = "ssl://mail3.gridhost.co.uk";
$port = "465";
$username = "username@mysite.org.uk;
$password = "Testing123";
$headers = array (
'From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail))
{
echo "<p>".$mail->getMessage()."</p>";
}
else
{
echo"<p>Message successfully sent!</p>";
}
我也有一个端口25,非SSL脚本,它也不起作用。 当我说不起作用时,它不会引发错误,只是没有电子邮件到达(已检查垃圾邮件)。
托管公司首先问我,require_once“ Mail.php”行所引用的Mail.php位置 文章建议将其安装在php4 +上(Im使用5.6.37)
这与本文非常相似: smtp configuration for php mail
但是我对如何继续感到脚。