【问题标题】:attached email sending in php 5.2.11在 php 5.2.11 中发送附加电子邮件
【发布时间】:2011-05-25 07:05:53
【问题描述】:

我在发送带有附件的电子邮件时遇到问题。

它在安装了 php 5.2.8 的服务器上工作,而在另一个安装了 php 5.2.11 的服务器上却没有工作。 以下是函数

function mail_attachment($filename, $path, $mailto, $from_mail, $from_name, $replyto, $subject, $message) 
{
    $file = $path.$filename;
    $file_size = filesize($file);
    $handle = fopen($file, "r");
    $content = fread($handle, $file_size);
    fclose($handle);
    $content = chunk_split(base64_encode($content));
    $uid = md5(uniqid(time()));
    $name = basename($file);
    $header = "From: ".$from_name." <".$from_mail.">\r\n";
    $header .= "Reply-To: ".$replyto."\r\n";
    $header .= "MIME-Version: 1.0\r\n";
    $header .= "Content-Type: multipart/mixed; boundary=\"".$uid."\"\r\n\r\n";
    $header .= "This is a multi-part message in MIME format.\r\n";
    $header .= "--".$uid."\r\n";
    $header .= "Content-type:text/plain; charset=iso-8859-1\r\n";
    $header .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
    $header .= $message."\r\n\r\n";
    $header .= "--".$uid."\r\n";
    $header .= "Content-Type: application/octet-stream; name=\"".$filename."\"\r\n"; // use diff. tyoes here 
    $header .= "Content-Transfer-Encoding: base64\r\n";
    $header .= "Content-Disposition: attachment; filename=\"".$filename."\"\r\n\r\n";
    $header .= $content."\r\n\r\n";
    $header .= "--".$uid."--";
    if (mail($mailto, $subject, "", $header)) {
       echo  "Picture Uploaded Successfully... OK"; // or use booleans here
  return true;
    } else {
        echo  "mail send ... ERROR!";
return false;
    }
}

【问题讨论】:

  • 请做一些基本的调试以找出问题所在,仅靠一堵代码不可能给出任何有用的反馈
  • 我在我的系统上尝试了你的功能。我得到这个错误:Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP"** and "smtp_port" setting in php.ini or use ini_set() in C:\wamp\www\LearnPHP\index.php on line 38 mail send ... ERROR! 你得到什么错误?

标签: php email send


【解决方案1】:

使用邮件库,例如 Swift Mailer 或 PHPMailer。

【讨论】:

  • 图片上传成功... OK 这是邮件功能给出的输出。它没有给出任何错误。但是邮件没有发送
猜你喜欢
  • 1970-01-01
  • 2010-12-02
  • 2021-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-30
相关资源
最近更新 更多