51CTO郁闷死我啦,好不容易整了一大段,一发表失败,还得从头再来,太不人性化了,需要改进啊,最起码也得先本地保存一下吧。
testmail.php:
<?php
/**
* 本实例通过Auth SMTP发送一个带有 文本 + HTML + 内嵌图片 + 附件
* 的 eMail
*/
/**
* 首先需要包含此类并声明一个变量
*/
include ('mimemail.inc.php');
$mimemail = new nomad_mimemail();
/**
* 首先设置SMTP的值
* 注: SMTP用户可以是一个email如果需要的话
*/
$smtp_host = "smtp.sina.com"; // *修改值*
$smtp_user = "username"; // *修改值*
$smtp_pass = "123456"; // *修改值*
/**
* 设置mail变量值创建邮件
* 检查下$html变量,带有一个img标签设置了src='image.gif'
*/
$from = "xichuanfu@sina.com"; // *修改值*
$to = "xcf-007@163.com"; // *修改值*
$subject = "来一个MIME Mail例子";
$text = "这里是MIME Mail纯文本\n\n";
$html = "<p>这是一个 <b>MIME</b>邮件,带有:</p>
<ul>
<li>纯文本</li>
<li>HTML</li>
<li>嵌入图片</li>
<li>附件</li>
</ul>
<img src='my_image.jpg' border='0'>";
/**
* 设置附件的文件路径
*/
$attach_image = "imgs/image.jpg";
$attach_file = "imgs/file.gz";
/**
* 设置类中的所有变量值
*/
$mimemail->set_from($from);
$mimemail->set_to($to);
$mimemail->set_subject($subject);
$mimemail->set_text($text);
$mimemail->set_html($html);
// 声明上面5行的快捷方式是
// $mimemail->new_mail($from, $to, $subject, $text, $html);
/**
* 添加附件根据文件名, 你会发现方法中的图片名和HTML文本中嵌入图片的声明的相同
*
*/
$mimemail->add_attachment($attach_image, "my_image.jpg");
$mimemail->add_attachment($attach_file, "my_file.gz");
/**
* 设置SMTP值.
* 如果你不需要Auth SMTP你可以注释掉set_smtp_auth部分
* 如果你不需要任何的SMTP你可以注释掉这2行,那么mail通过php的mail函数发送
*
*/
$mimemail->set_smtp_log(true); // 如果你需要调试SMTP链接时
$mimemail->set_smtp_host($smtp_host);
$mimemail->set_smtp_auth($smtp_user, $smtp_pass);
$mimemail->set_charset('GBK');//中文编码
/**
* 发送邮件
*/
if ($mimemail->send()){
echo "MIME Mail邮件已经发送.";
}
else {
echo "发送错误,邮件没有被发送.";
}
echo "<br><br><textarea cols=80 rows=30>" . $mimemail->get_smtp_log() . "</textarea>"; // 如果你需要调试SMTP链接时
/>
/**
* 本实例通过Auth SMTP发送一个带有 文本 + HTML + 内嵌图片 + 附件
* 的 eMail
*/
/**
* 首先需要包含此类并声明一个变量
*/
include ('mimemail.inc.php');
$mimemail = new nomad_mimemail();
/**
* 首先设置SMTP的值
* 注: SMTP用户可以是一个email如果需要的话
*/
$smtp_host = "smtp.sina.com"; // *修改值*
$smtp_user = "username"; // *修改值*
$smtp_pass = "123456"; // *修改值*
/**
* 设置mail变量值创建邮件
* 检查下$html变量,带有一个img标签设置了src='image.gif'
*/
$from = "xichuanfu@sina.com"; // *修改值*
$to = "xcf-007@163.com"; // *修改值*
$subject = "来一个MIME Mail例子";
$text = "这里是MIME Mail纯文本\n\n";
$html = "<p>这是一个 <b>MIME</b>邮件,带有:</p>
<ul>
<li>纯文本</li>
<li>HTML</li>
<li>嵌入图片</li>
<li>附件</li>
</ul>
<img src='my_image.jpg' border='0'>";
/**
* 设置附件的文件路径
*/
$attach_image = "imgs/image.jpg";
$attach_file = "imgs/file.gz";
/**
* 设置类中的所有变量值
*/
$mimemail->set_from($from);
$mimemail->set_to($to);
$mimemail->set_subject($subject);
$mimemail->set_text($text);
$mimemail->set_html($html);
// 声明上面5行的快捷方式是
// $mimemail->new_mail($from, $to, $subject, $text, $html);
/**
* 添加附件根据文件名, 你会发现方法中的图片名和HTML文本中嵌入图片的声明的相同
*
*/
$mimemail->add_attachment($attach_image, "my_image.jpg");
$mimemail->add_attachment($attach_file, "my_file.gz");
/**
* 设置SMTP值.
* 如果你不需要Auth SMTP你可以注释掉set_smtp_auth部分
* 如果你不需要任何的SMTP你可以注释掉这2行,那么mail通过php的mail函数发送
*
*/
$mimemail->set_smtp_log(true); // 如果你需要调试SMTP链接时
$mimemail->set_smtp_host($smtp_host);
$mimemail->set_smtp_auth($smtp_user, $smtp_pass);
$mimemail->set_charset('GBK');//中文编码
/**
* 发送邮件
*/
if ($mimemail->send()){
echo "MIME Mail邮件已经发送.";
}
else {
echo "发送错误,邮件没有被发送.";
}
echo "<br><br><textarea cols=80 rows=30>" . $mimemail->get_smtp_log() . "</textarea>"; // 如果你需要调试SMTP链接时
/>
用到的类
还有一个试了试本地不行需要认证
<?php
ini_set('SMTP', 'smtp.sina.com');
$headers ='MIME-Version: 1.0'."\r\n";
$headers .='Content-type: text/html; charset=gbk'."\r\n";
$headers .='From: root@yourdomain.com'."\r\n";
mail("xichuanfu@sina.com","测试mail()函数","这里我们测试一下mail函数的用法",$headers);
>
ini_set('SMTP', 'smtp.sina.com');
$headers ='MIME-Version: 1.0'."\r\n";
$headers .='Content-type: text/html; charset=gbk'."\r\n";
$headers .='From: root@yourdomain.com'."\r\n";
mail("xichuanfu@sina.com","测试mail()函数","这里我们测试一下mail函数的用法",$headers);
>
地址
本文转自 xcf007 51CTO博客,原文链接:http://blog.51cto.com/xcf007/138957,如需转载请自行联系原作者