簡體   English   中英

通過POP訪問時,通過CakePHP發送的電子郵件顯示空白消息正文

[英]E-mail sent via CakePHP shows up with blank message body when accessed via POP

我正在為組織編寫一個小型的CakePHP應用程序,其中包括一個簡單的聯系表單,該表單接受電子郵件地址,主題和消息,並將該消息通過電子郵件發送給該地址。

, which most of them do. 一切似乎都可以正常工作,發給自己或組織中任何人的任何電子郵件都可以正常發送, ,大多數情況下都是如此。 在這種情況下,電子郵件隨主題一起到達,但正文為空白。 但是,如果通過Webmail客戶端讀取消息,則正文顯示的很好。

還有其他人遇到這個問題嗎? CakePHP,電子郵件標頭是否有問題,還是應該與托管公司聯系? 我的代碼直接基於CakePHP文檔中給出的示例

這是接收請求數據並發送電子郵件的控制器操作:

function send() {
    if (!empty($this->data)) {
        $contact = $this->Contact->read(null, $this->data['ContactMessage']['contact_id']);
        $this->data['ContactMessage']['ip'] = $this->RequestHandler->getClientIp();
        $this->ContactMessage->create();
        if ($this->ContactMessage->save($this->data)) {
            $this->Email->to = $contact['Contact']['email'];
            $this->Email->subject = $this->data['ContactMessage']['subject'];
            $this->Email->replyTo = $this->data['ContactMessage']['email'];
            $this->Email->from = $this->data['ContactMessage']['email'];
            $this->Email->sendAs = 'both';
            $this->Email->send($this->data['ContactMessage']['message']);
            $this->redirect(array('controller' => 'contacts', 'action' => 'thanks'));
        } else {
            $this->redirect(array('controller' => 'contacts', 'action' => 'oops'));
        }
    }
}

我認為問題是您不能使用send()來發送HTML /文本消息。 當您將消息傳遞給發送基本文本消息的send()時,如果要發送html消息,則必須將數據設置為模板。

http://book.cakephp.org/view/269/Sending-a-basic-message#Controller-273

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM