我想用PHP发送一个简单的邮件脚本。它不起作用,我在邮件日志或错误日志中没有错误。
这是我的php.ini配置
SMTP = relais.videotron.ca
smtp_port = 25
sendmail_from = xxxx@xxxx.com (Of cours it's my ISP email there :D)
sendmail_path = /usr/sbin/sendmail -i -t
和我的简单邮件()测试
mail("xxxx@xxxx.com","test","test");
没什么可行的。它可能是什么?
答案 0 :(得分:2)
内置的PHP mail
命令不允许您对SMTP服务器进行身份验证。您的ISP SMTP服务器需要身份验证,因此拒绝连接。
info provided by your ISP确认了这一点;
可以使用明文从外部网络访问SMTP服务器 使用代码“VL”或邮件别名进行身份验证示例: customer@videotron.ca
您的选项要么使用允许匿名连接的SMTP服务器,要么(如Eamorr所说)使用邮件程序类。
答案 1 :(得分:0)
我使用SwiftMailer:
require_once('../lib/swiftMailer/lib/swift_required.php');
...
function sendEmail(){
//Sendmail
$transport = Swift_SendmailTransport::newInstance('/usr/sbin/sendmail -bs');
//Create the Mailer using your created Transport
$mailer = Swift_Mailer::newInstance($transport);
$body="Dear $fname,\n\nYour job application was successful. \n\nYours,\n\nEamorr\n\n\n\n\n\n\n";
//Create a message
$message = Swift_Message::newInstance('Subject goes here')
->setFrom(array($email => "no-reply@yourdomain.com"))
->setTo(array($email => "$fname $lname"))
->setBody($body);
//Send the message
$result = $mailer->send($message);
}
您可以轻松发送纯文本和HTML电子邮件。