2012-11-17 67 views
-1

我在我的域名上創建了一個網頁,我希望允許任何訪問者通過電子郵件將此頁面發送給任何人。如何通過電子郵件發送網頁?

該頁面有圖片,css和php代碼。它從我的網站獲得5大新聞。

我想使用這個類:

<?php 
include_once("../DataAccess.php"); 
class sendmail 
{ 
    /** 
    * @var from mail. 
    */ 
    public $from = "[email protected]"; 

    /** 
    * @var from name. 
    */ 
    public $fromName = " Mail List"; 

    /** 
    * @var to mail. 
    */ 
    public $to = '[email protected]'; // note the comma , if you want multiple recipients 

    /** 
    * @var to name. 
    */ 
    public $name = 'Khaled'; 

    /** 
    * @var subject. 
    */ 
    public $subject = 'Hello World !!'; 

    /** 
    * @var message. 
    */ 
    public $message = 'Thank you, your message has been received We will reply you as soon [email protected]'; 

    /** 
    * @var newlines. 
    */ 
    private $RN = "\r\n"; 

    /** 
    * @var message charset. 
    */ 
    public $charset = 'utf-8'; 

    /** 
    * Sends an email. 
    * 
    * @author Yousef Ismaeil. 
    */ 
    public function mail_to() 
    { 

     $mail = &$this; 

     // To send HTML mail, the Content-type header must be set 
     $headers = 'MIME-Version: 1.0'.$mail->RN; 
     $headers .= 'Content-type: text/html; charset='.$mail->charset.''.$mail->RN; 
     // Additional headers 
     $headers .= 'To: '.$mail->name.' <'.$mail->to.'>'.$mail->RN; 
     $headers .= 'From: '.$mail->fromName.' <'.$mail->from.'>'.$mail->RN; 
     $headers .= 'Return-Path: '.$mail->from.'\r\n'; 
     $headers .= "X-Priority: 1\r\n"; 
     $headers .= "X-MSMail-Priority: High\r\n"; 



     if (@mail($mail->to, $mail->subject, $mail->message, $headers)) 
     { 
      return true; 
     } 
     else 
     { 
      return false; 
     } 

    } 

} 

$date1=date('Y-m-d'); 
$send_mail = new sendmail(); 
$send_mail->from  = "[email protected]"; 
$send_mail->fromName = "Zamalkawy Ana"; 
$send_mail->to  = "[email protected]"; 
$send_mail->name  = "Khlaed"; 
$send_mail->subject = "Zamalkawy Ana Sports news for ".$date1; 
$homepage = file_get_contents('http://zamalkawyana.com/MailList/home.php'); 
$send_mail->message = $homepage; 
if ($send_mail->mail_to()) echo 'Msg sent'; 
else echo 'Can\'t send msg.'; 

?> 

...但是當我把它,我只得到的新聞標題和圖片,並不能看到頁面的模板。

我該怎麼做?

+0

只要你知道,如果你從一個地址,如雅虎發送郵件,而實際上它並不來自雅虎服務器,它可能會被丟棄(谷歌DKIM和發件人策略框架以獲取更多信息) –

+0

目的使用谷歌的電子郵件,但不發送臨時電子郵件 –

回答

0

添加到標題:$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";

你可以把HTML代碼的郵件正文內(如字符串)。

也看看這個link

+0

我將被使用,但不會改變 –

+0

事實上,我使用你的代碼從頭開始'$頭。='Content-type:text/html; charset ='。$ mail-> charset。''。$ mail-> RN;'see my code –

+0

[link](http://up.top4top.net/uploads/2012/11/17/top4top_f3b26b374b1.jpg) –

1

在上面的說明中不清楚$ homepage包含什麼。它可能可能是是您的頁面的html標記。但是如果你真的想發送內容,這是值得懷疑的。

通常做的不是發送實際的html內容,而是指向頁面的鏈接(url)。由於無論如何,您的網頁都可以通過互聯網上的網址訪問,因此這是一個微不足道的步驟。

這有一定的優勢:

  1. 消息變得更小,因爲它是唯一的文字加鏈接的幾行。它決定訪問該頁面還是不訪問接收器。

  2. 該消息可以顯示在任何電子郵件客戶端沒有巨大的安全問題的HTML消息舉行。所以對收件人來說更公平,因爲你不必從任何收件人那裏請求最終的信任,只是爲了打開你的郵件。

  3. 你可以寫一些關於這個消息實際包含的內容,它爲什麼被髮送等等。它更友好,因爲它更透明。