2012-04-26 187 views
0

我現在的情況是將PHP代碼連接到Microsoft Outlook以發送電子郵件?

  1. 我使用的XAMPP(本地主機)
  2. 所有傳出端口被封鎖(GMAIL 25465587,Hotmail服務等等等等)

我想用PHP連接到我自己的微軟Outlook,所以我可以從我公司的電子郵件地址發送電子郵件。請儘可能幫忙,謝謝!

因爲我連接到Microsoft Outlook發送電子郵件,我還需要配置Mercury服務器嗎?

+0

是的,我同意。這是交換。我知道了,我怎麼去做的? – user127886 2012-04-26 02:55:55

回答

1

你不連接到Outlook與PHP連接到郵件服務器...在這種情況下,我懷疑這將是交易所。您可以使用像SwiftMailerPHPMailerZend_Mail這樣的包通過SMTP與一個帳戶發送消息。因此,您可以使用您用於Outlook郵箱的相同憑據和設置......特別是:SMTP服務器(傳出服務器),端口,加密(ssl/tls)用戶名,密碼。從文檔

例子

  1. SwiftMailer
  2. PHPMailer
  3. Zend_Mail
+0

你有代碼示例嗎? – user127886 2012-04-26 02:57:18

+0

我確實嘗試過PHPMailer,我確實設置了我的SMTP服務器,端口,用戶名和密碼,它不起作用。 – user127886 2012-04-26 03:01:44

+0

安全性如何?你們是否使用SSL或TLS等加密技術?我沒有Windows管理員,但也可能有一個安全策略,仍然會阻止你以這種方式發送。但是,如果您可以連接說GMail,則可以隨時發送。 – prodigitalson 2012-04-26 03:03:09

1

其實你可以直接連接到Outlook。 對我來說,接下來的代碼工作剛剛開箱:

<?php 
    $subject="This is a test message";   
    $message="This is a Body Section now.....! :)";   
    $to="[email protected]"; 

    // starting outlook   
    com_load_typelib("outlook.application"); 

    if (!defined("olMailItem")) {define("olMailItem",0);} 

    $outlook_Obj = new COM("outlook.application") or die("Unable to start Outlook"); 

    //just to check you are connected.   
    echo "Loaded MS Outlook, version {$outlook_Obj->Version}\n";   
    $oMsg = $outlook_Obj->CreateItem(olMailItem);   
    $oMsg->Recipients->Add($to); 
    $oMsg->Subject=$subject;   
    $oMsg->Body=$message;   
    $oMsg->Save();   
    $oMsg->Send();  
?> 

請確保您已經添加

[COM_DOT_NET] 
extension=php_com_dotnet.dll 

在php.ini中結束(在我來說,我有PHP 5.3)

+0

它在服務器中工作嗎?或者這隻適用於本地主機? – 2017-08-29 06:52:43