我以前使用PHP發送過電子郵件,但從未從其他源發送完整的HTML頁面,因此我想知道從哪裏開始以及其他一些事情。PHP從網站發送HTML EMAIL頁面
我做了一些研究,但我的困惑沒有清理任何。
我是否直接獲取網頁內容併發送該內容,或者我可以使用設置僅使用URL? 什麼是我可以使用的最簡單的方法,有人可以給我一個例子嗎? 發送這樣的電子郵件有沒有風險... 5000人,以及如何通過返回鏈接來更改標題數據URL源?
我以前使用PHP發送過電子郵件,但從未從其他源發送完整的HTML頁面,因此我想知道從哪裏開始以及其他一些事情。PHP從網站發送HTML EMAIL頁面
我做了一些研究,但我的困惑沒有清理任何。
我是否直接獲取網頁內容併發送該內容,或者我可以使用設置僅使用URL? 什麼是我可以使用的最簡單的方法,有人可以給我一個例子嗎? 發送這樣的電子郵件有沒有風險... 5000人,以及如何通過返回鏈接來更改標題數據URL源?
以下代碼行獲取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 = "[email protected]"; // GMAIL username
$mail->Password = "yourpassword"; // GMAIL password
$mail->AddReplyTo('[email protected]', 'First Last');
$mail->AddAddress('[email protected]', 'John Doe');
$mail->SetFrom('[email protected]', 'First Last');
$mail->AddReplyTo('[email protected]', '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!
}
聲明:我還不能發表評論,所以請原諒這是一個 「答案」。
我想你可能要在這裏澄清一下你的目標。
這聽起來像你想要做的是先建立一個基本的刮板,除非你有權訪問原始的html文件。 基本上你可以使用fopen(「Url」,「r」),fsockopen(「url」,80),或者使用curl處理程序來提交頁面請求。
從這裏,根據您的方法,您可以閱讀回覆並生成HTML或多部分電子郵件。
只要添加一個鏈接到電子郵件標題,你可以做到這一點,但我有一種感覺,它不會做你想做的。做到這一點的方式取決於您決定如何發送電子郵件。
艾夫斯的回答很好。
有一個問題,你真的想通過電子郵件發送一個html頁面來考慮。
Html電子郵件和Html頁面是兩個完全不同的學校。
Html電子郵件讓你回到10年(hello tables!),你可以做什麼來支持儘可能多的電子郵件客戶端。
它很可能直電子郵件-A-網頁看起來會總廢話收件人電子郵件..
,然後你必須考慮嵌入樣式表,等等。
做你想做的發送一個鏈接到頁面,或者你想發送頁面的源? – drudge 2010-12-02 23:52:30
如果您擔心監管問題,可以通過[常量聯繫方式](http://www.constantcontact.com/)等服務處理髮送至列表。然後他們可以管理選擇退出等。 – zanlok 2010-12-03 00:17:17
我對法規有點擔心,但現在我開始通過電子郵件發送頁面源。 – Chenelle 2010-12-03 01:16:25