我想使用PEAR郵件發送使用外部smtp服務器。它似乎掛了一段時間,然後劇本結束。它輸出我的所有「回聲」語句,直到發送完成爲止。在發送之前,回聲沒有輸出。任何人都可以告訴我這裏可能有什麼問題嗎? (用虛擬值代替smtp值)。郵件沒有被髮送。感謝您的幫助!問題與PHP PEAR郵件
echo "start";
$n = $_POST['txtName'];
$e = $_POST['txtEmail'];
$t = 'Kenny <[email protected]>';
$f = 'Kenny <[email protected]>';
$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";
感謝您的答覆託德只需卸下卡拉科特 「&」。 – Kenny 2010-02-18 16:31:52
你好。我測試了你的腳本,它與「真實」代碼具有相同的效果。它掛起,沒有警告,沒有錯誤。我的php配置包含error_reporting = E_ALL | E_STRICT和display_errors =開。還有其他建議嗎? – 2012-05-06 16:00:03
按照Rap和Jayme Dunlap的建議,在命令行上運行它以查看錯誤。 – 2012-05-07 12:33:17