2013-05-08 98 views
2
$transport = Swift_SmtpTransport::newInstance('smtp.gmail.com', 465, "ssl") 

->setUsername('username') 
->setPassword('password'); 

$username = $_SESSION['username']; 
$from = $_POST['from']; 
$to = $_POST['to']; 
$subject = $_POST['subject']; 
$body = $_POST['message']; 

$message = Swift_Message::newInstance($subject) 

->setFrom(array($from => $username)) 
->setTo(array($to)) 
->setBody($body); 

$mailer = Swift_Mailer::newInstance($transport); 
$result = $mailer->send($message); 

錯誤的網頁瀏覽器返回:無法使用斯威夫特梅勒發送電子郵件

致命錯誤:未捕獲的異常「Swift_TransportException」有消息「連接不能與主機smtp.gmail.com [無法建立找到套接字傳輸「ssl」 - 您是否忘記在配置PHP時啓用它? #157919304]'在C:\ Program Files \ xampp \ htdocs \ healthcare system \ swift \ lib \ classes \ Swift \ Transport \ StreamBuffer.php:259堆棧跟蹤:#0 C:\ Program Files \ xampp \ htdocs \ healthcare system \ Swift \ Transport \ StreamBuffer.php(64):Swift_Transport_StreamBuffer - > _ establishSocketConnection()#1 C:\ Program Files \ xampp \ htdocs \ healthcare system \ swift \ lib \ classes \ Swift \ Transport \ AbstractSmtpTransport .php(115):Swift_Transport_StreamBuffer-> initialize(Array)#2 C:\ Program Files \ xampp \ htdocs \ healthcare system \ swift \ lib \ classes \ Swift \ Mailer.php(80):Swift_Transport_AbstractSmtpTransport-> start()# 3 C:\ Program Files \ xampp \ htdocs \ healthcare system \ mail_process.php(32):Swift_Mailer-> send(Object(Swift_Message))#4 {main}拋出C:\ Program Files \ xampp \ htdocs \ healthcare system \ swift \ Transport \ StreamBuffer.php on line 259

+0

請幫助....我一直在嘗試用PHP發送郵件的方法很多,但一直都讓我失望......這個功能對於我的Final Year Project至關重要運行良好.....需要幫助!謝謝大家提前... – 2013-05-08 05:03:29

+0

這個錯誤出現後,由MIss Poo給出的語法更正。當我試圖通過Swift Mailer發送測試郵件時,這也是我得到的傳統錯誤。回到零點。什麼必須在PHP中配置?或者它是一個迅捷梅勒配置錯誤....請幫助 – 2013-05-08 05:57:30

回答

0

替換下面的代碼:

$message = Swift_Message::newInstance('$subject') 

->setFrom(array('$from' => '$username')) 
->setTo(array('$to')) 
->setBody('$body'); 

隨着

$message = Swift_Message::newInstance($subject) 

->setFrom(array($from => $username)) 
->setTo(array($to)) 
->setBody($body); 

如這裏使用的是單引號是在你的代碼的問題。

0

替換此

- > setUsername( '用戶名')

- > setPassword( '密碼');

$ transport-> setUsername('username');/*注意:用戶名是您的Gmail用戶名(例如
[email protected])*/

$ transport-> setPassword('password');/密碼是你的gmail密碼/