我正在尝试使用 PEAR Mail 通过外部 smtp 服务器发送邮件。它似乎挂了一会儿,然后脚本结束。它输出我所有的“echo”语句,直到发送后的语句。在“发送前”的 echo 之后没有任何输出。谁能告诉我这里可能出了什么问题? (虚拟值代替 smtp 值)。未发送邮件。感谢您的帮助!
echo "start";
$n = $_POST['txtName'];
$e = $_POST['txtEmail'];
$t = 'Kenny <email@host.com>';
$f = 'Kenny <email@host.com>';
$s = 'CPA TEST';
$b = "name: $n email: $e";
include("mail.php");
echo "after include";
/* mail setup recipients, subject etc */
$recipients = $t;
$headers["From"] = $f;
$headers["To"] = $t;
$headers["Subject"] = $s;
$mailmsg = $b;
/* SMTP server name, port, user/passwd */
$smtpinfo["host"] = "my_smtp_host";
$smtpinfo["port"] = "25";
$smtpinfo["auth"] = true;
$smtpinfo["username"] = "my_email";
$smtpinfo["password"] = "my_password";
echo "before object";
/* Create the mail object using the Mail::factory method */
$mail_object =& Mail::factory("smtp", $smtpinfo);
echo "before send";
/* Ok send mail */
$send = $mail_object->send($recipients, $headers, $mailmsg);
echo "after send";
if (PEAR::isError($send)) { print($send->getMessage());}else{print "end";}
echo "done";
最佳答案
如果有人在 linux 上运行并遇到与 Jayme 相同的问题。这是安装缺少的“Net/”类的另一个简单解决方案。这些缺失的类会导致脚本中断。
sudo pear install Net_SMTP
关于php - PHP PEAR 邮件问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2284468/