我一直在嘗試使用pear和php腳本發送郵件。我已經搜索了一整天,但還沒有找到我的問題。當我在網站上運行這段代碼時,什麼也沒有發生。它快速加載然後停止。我跑了一些回聲命令,並且我發現代碼特別停在:使用php腳本的梨郵件只是停止
$mail = $smtp->send($to, $headers, $body);
就是這樣。沒有其他事情發生我沒有得到任何錯誤輸入或任何東西,我只是看到我的回聲發生在此之前,沒有回聲後。我已經安裝了梨,還有梨郵件。我'認爲'我正確地安裝了它們,因爲我可以在任何地方將「pear」輸入到命令行中,它會顯示菜單。我通過我的路由器和防火牆打開了端口465,tcp。我在一臺Windows XP機器上。我不知道錯誤日誌會在哪裏查看是否有不良現象發生。我的服務器是apache 2.2,託管在這個窗口框中。
<?php
require_once "Mail.php";
$from = "[email protected]";
$to = "[email protected]";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
$server = "ssl://smtp.gmail.com";
$username = "[email protected]";
$password = "pass";
$headers = array (
"From" => $from,
"To" => $to,
"Subject" => $subject);
$smtp = Mail::factory("smtp",
array ("host" => $server,
"port" => 465,
"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>");
}
?>
我在想事情,並且我的php.ini文件中的[郵件功能]會對此產生什麼影響?最初我設置了通過att出站smtp服務器,因爲我試圖通過我的isp來發送郵件。順便說一句,有沒有人知道att阻止端口465?我的郵件功能。 [郵件功能] ;僅適用於Win32。 SMTP = ssl://smtp.gmail.com smtp_port = 465 ;僅適用於Win32。 sendmail_from = [email protected] – user1477103
我不認爲php.ini會與此有任何關係,不。打開命令提示符時會發生什麼情況,運行「telnet smtp.gmail.com 465」?它會變成空白,並給你一個閃爍的光標,或者你永遠會「連接到...」嗎? – dogglebones
它變成空白,並給我一個遊標。 – user1477103