我之前使用PHP发送电子邮件,但从未从其他来源发送完整的HTML页面,所以我想知道从哪里开始和其他一些事情。
我做了一些研究,但我的困惑并没有消除任何问题。
我是直接获取网页内容并发送,还是可以使用设置来使用网址? 我可以使用的最简单的方法是什么,有人可以给我一个例子吗? 发送这样的电子邮件是否存在风险... 5000人以及如何使用返回链接到URL源的链接更改标题数据?
答案 0 :(得分:3)
以下行获取HTML页面的内容。
$mail->MsgHTML(file_get_contents('contents.html'));
到这里查看详细信息: http://phpmailer.worxware.com/index.php?pg=exampleagmail
require_once('../class.phpmailer.php');
//include("class.smtp.php"); // optional, gets called from within class.phpmailer.php if not already loaded
$mail = new PHPMailer(true); // the true param means it will throw exceptions on errors, which we need to catch
$mail->IsSMTP(); // telling the class to use SMTP
try {
$mail->Host = "mail.yourdomain.com"; // SMTP server
$mail->SMTPDebug = 2; // enables SMTP debug information (for testing)
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "tls"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 587; // set the SMTP port for the GMAIL server
$mail->Username = "yourusername@gmail.com"; // GMAIL username
$mail->Password = "yourpassword"; // GMAIL password
$mail->AddReplyTo('name@yourdomain.com', 'First Last');
$mail->AddAddress('whoto@otherdomain.com', 'John Doe');
$mail->SetFrom('name@yourdomain.com', 'First Last');
$mail->AddReplyTo('name@yourdomain.com', 'First Last');
$mail->Subject = 'PHPMailer Test Subject via mail(), advanced';
$mail->AltBody = 'To view the message, please use an HTML compatible email viewer!'; // optional - MsgHTML will create an alternate automatically
$mail->MsgHTML(file_get_contents('contents.html'));
$mail->AddAttachment('images/phpmailer.gif'); // attachment
$mail->AddAttachment('images/phpmailer_mini.gif'); // attachment
$mail->Send();
echo "Message Sent OK\n";
} catch (phpmailerException $e) {
echo $e->errorMessage(); //Pretty error messages from PHPMailer
} catch (Exception $e) {
echo $e->getMessage(); //Boring error messages from anything else!
}
答案 1 :(得分:1)
免责声明:我还不能评论,所以请原谅这是一个“答案”。
我认为你可能需要在这里澄清一下你的目标。
听起来你想要做的是首先构建一个基本的刮刀,除非你有权访问原始的html文件。 基本上你可以使用fopen(“url”,“r”),fsockopen(“url”,80),或者使用curl处理程序来提交页面请求。
从这里开始,根据您的方法,您将阅读响应并生成HTML或多部分电子邮件。
至于添加电子邮件标题的链接,你可以这样做,但我觉得它不会做你想要的。这样做的方式取决于您决定发送电子邮件的方式。
答案 2 :(得分:0)
通过电子邮件发送html页面,你真的想要考虑一个问题。
Html电子邮件和Html页面是两个完全不同的学校。
Html电子邮件将带您回顾10年(问候表!),您可以采取哪些措施来支持尽可能多的电子邮件客户端。
很可能是直接的电子邮件 - 网页上的内容会在收件人电子邮件中看起来很糟糕..
然后你必须考虑嵌入样式表等。