簡體   English   中英

如何使用ubuntu操作系統在PHP中發送郵件?

[英]How to send mail in PHP by using ubuntu operating system?

這是我的代碼,我在項目文件夾中包含了mime.phpmail.php and Mail.php等所有文件,但仍然無法正常運行郵件。

<?php
require "Mail.php";
require_once 'Mail/mime.php';
require_once 'Mail/mail.php';

$to = "mymail@gmail.com";
$from = "sendmail@gmail.com";
$subject = utf8_decode("mail");
$message = utf8_decode("hi");
$attachment_data = utf8_decode("testingmail1-filecontent");
$attachment_filename = utf8_decode("testingmail1.php");
send_mail_utf8_with_attachment($to, $from, $subject, $message ,$attachment_data, $attachment_filename);

function send_mail_utf8_with_attachment($to, $from, $subject, $message = "",$attachment_data="", $attachment_filename="")
{
    $params = array();
    $params['head_charset'] = 'utf-8';
    $params['text_charset'] = 'utf-8';
    $params['html_charset'] = 'utf-8';
    $params['eol'] = "\n";
    $hdrs = array('From'    => $from ,'Subject' => $subject );
    $mime = new Mail_mime($params);
    $mime->setTXTBody($message);

    if (strlen($attachment_data) && strlen($attachment_filename))
    {
        $mimeType = "application/octet-stream";
        $mime->addAttachment($attachment_data, $mimeType, $attachment_filename, false);
    }

    $body = $mime->get();
    $hdrs = $mime->headers($hdrs);
    $mail =& Mail::factory('mail');
    return $mail->send($to, $hdrs, $body);
} 
?>

我已經實現了所有安裝:

sudo apt-get install php-pear
sudo pear install mail
sudo pear install Net_SMTP
sudo pear install Auth_SASL
sudo pear install mail_mime

但它仍然無法正常工作。

您必須在Ubuntu上配置SMTP服務器。 我個人通常使用ssmtp和gmail看看相關的tuto: http//blog.seeit.org/2010/08/php-mail-with-ubuntu-desktop-and-gmail/

也許您發送郵件的php.ini設置不正確。 嘗試類似mail('caffeinated@example.com', 'My Subject', $message); 如果這是有效的,你在php.ini中的郵件設置是正確的。

暫無
暫無

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

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