【问题标题】:EWS - php sending email with attachmentEWS - php 发送带附件的电子邮件
【发布时间】:2011-06-06 10:37:17
【问题描述】:

我刚开始使用 Exchangeclient 类中的 EWS。

我正在寻找一个如何发送带有附件的电子邮件的简单示例。我找到了有关如何发送电子邮件但不发送带附件的电子邮件的示例。

这是我的脚本:

$exchangeclient = new Exchangeclient();
$exchangeclient->init($username, $password, NULL, 'ews/Services.wsdl');
$exchangeclient->send_message($mail_from, $subject, $body, 'HTML', true, true);

函数 - PHP 类:

    function send_message($to, $subject, $content, $bodytype="Text", $saveinsent=true, $markasread=true) {
    $this->setup();

    if($saveinsent) {
        $CreateItem->MessageDisposition = "SendOnly";
        $CreateItem->SavedItemFolderId->DistinguishedFolderId->Id = "sentitems";
    }
    else
        $CreateItem->MessageDisposition = "SendOnly";

    $CreateItem->Items->Message->ItemClass = "IPM.Note";
    $CreateItem->Items->Message->Subject = $subject;
    $CreateItem->Items->Message->Body->BodyType = $bodytype;
    $CreateItem->Items->Message->Body->_ = $content;
    $CreateItem->Items->Message->ToRecipients->Mailbox->EmailAddress = $to;

    if($markasread)
        $CreateItem->Items->Message->IsRead = "true";

    $response = $this->client->CreateItem($CreateItem);

    $this->teardown();

    if($response->ResponseMessages->CreateItemResponseMessage->ResponseCode == "NoError")
        return true;
    else {
        $this->lastError = $response->ResponseMessages->CreateItemResponseMessage->ResponseCode;
        return false;
    }

}

【问题讨论】:

    标签: php exchangewebservices nusoap exchange-server-2007


    【解决方案1】:

    您必须首先将电子邮件保存为草稿(具有适当的消息处理),然后 CreateAttachment() 使其具有附件,然后使用 UpdateItem() 对其进行编辑,以便消息处理为 SendOnly。然后发送。

    请参阅 David Sterling 在此线程上的回复:http://social.technet.microsoft.com/Forums/en-US/exchangesvrdevelopment/thread/f7d5257e-ec98-40fd-b301-f378ba3080fd/(与会议请求有关,但它们的工作方式相同。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-15
      • 2020-11-20
      • 2014-02-28
      • 2012-01-15
      • 2013-08-26
      • 2017-09-06
      • 2015-08-28
      相关资源
      最近更新 更多