我现在正在开发我的新商业网站。我正在实现一个简单的联系表格,并通过电子邮件将所有需要的数据发送到我的电子邮件地址。
如果由于任何原因电子邮件传输不起作用,我不想显示错误消息,但如果可能的话,请尝试以不同的方式接收请求。
我已经考虑过一些备用电子邮件地址(在其他服务器上)来发送请求。但我对这个想法不太满意。你有更好的吗?我是不是太害怕这种不太可能的情况了?
假设您使用的是php mail();
函数。
$email = mail($to,$subject,$message);
if($email === false){
//Store that email in database
//Notify yourself with another email
}
但这种验证并不意味着你的电子邮件会送达。它取决于你的邮件服务器来发送电子邮件,它可能会失败,你对此无能为力。
另一种选择是使用Pear php邮件包https://pear.php.net/manual/en/package.mail.mail.send.php
使用它,你可以使用其他服务器的SMTP
,例如gmail,它不太可能失败。如果由于某些原因它失败了,你应该在发送框中找到那封邮件(我对此不确定)
您还可以使用其他邮件服务来保证邮件送达。
正如您所问
PHP mail()
不应用于批量电子邮件。PHP表示
值得注意的是,
mail()
函数不适用于更大的循环中的大量电子邮件。此功能打开和关闭SMTP套接字,这不是很有效。发送大量电子邮件,请参阅»PEAR::Mail和»PEAR::Mail_Queue包裹。