亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

php多種形式發送郵件(mail qmail郵件系統 phpmailer類)

2024-09-04 11:46:54
字體:
來源:轉載
供稿:網友

1. 使用 mail() 函數

沒什么好講的,就是使用系統自帶的smtp系統來發送,一般是使用sendmail來發。這個按照各個系統不同而定。使用參考手冊。

2. 使用管道的形式

昨天剛測試成功,使用本地的qmail來發送郵件。

  1. /* 使用qmail發送郵件函數 */   
  2. function send_check_mail($email$subject,$uid,$buffer)   
  3. {   
  4.  $command =  "/var/qmail/bin/qmail-inject ".$email//qmail程式地址,$email是要發送的地址   
  5.  $handle = popen($command"w"); //打開管道  http://www.cnblogs.com/roucheng/ 
  6.  if (!$handle) {   
  7.   return false;   
  8.  }    
  9.  
  10.  $from = "webmaster@unixsky.net"//發件人   
  11.  fwrite($handle"From: ".$from."\n"); //往管道寫數據   
  12.  fwrite($handle"Return-Path: ".$from."\n");   
  13.  fwrite($handle"To: ".$uid."\n");   
  14.  fwrite($handle"Subject: ".$subject."\n");   
  15.  fwrite($handle"Mime-Version: 1.0\n");   
  16.  fwrite($handle"Content-Type: text/html; charset=\"gb2312\"\n\n");   
  17.  fwrite($handle$buffer."\n");   
  18.  pclose($handle); //關閉管道   
  19.  
  20.  return true;   
  21. }   
  22.  
  23. ------------------測試發送郵件:   
  24.  
  25. //發送郵件   
  26.  
  27. $subject = "測試郵件";   
  28.  
  29. $uid = $_POST['uid']; //from信息   
  30. $content = "<html><body>".$u_email    
  31.  
  32.    ." 你好!<br><br>謝謝,本郵件測試!<br</body></html>"//內容信息   
  33.  
  34. $u_email = "hren@yahoo.com.cn"//發送到的郵箱   
  35. if (send_check_mail($u_email$subject$uid$content)) {   
  36.  
  37.  echo "恭喜!發送投票郵件到你的郵箱!<br><br>請檢查你的郵箱:<font color=#CC0033>".$u_email." </font><br><br>"$close;   
  38.  } else {   
  39.  
  40.  echo "非常不幸,發送投票郵件到你的郵箱失敗,請重試或聯系研發人員。<br><br>"$close;   
  41.  

當然,也能使用相同的方法來處理sendmail的進程來發送郵件。

下面代碼示例:

  1. <?php   
  2. $pp = popen("/usr/sbin/sendmail -t""w"or die("Cannot fork sendmail");   
  3. fputs($pp"To: sterling@designmultimedia.com\r\n");   
  4. fputs($pp"Reply-to: $senders_email\r\n");   
  5. fputs($pp"From: $senders_email\r\n");   
  6. fputs($pp"Subject The Results of your form\r\n\r\n");   
  7. fputs($pp"$senders_email sent the fllowing comments:\r\n");   
  8. fputs($pp$comments);   
  9. pclose($ppor die("Cannot close pipe to sendmail");   
  10. ?> 

其實這種管道的方法比較底層,取決于你所調用程式的穩定性。所以是一種可選的發送郵件的方式。

3. 使用phpmailer類

是個開源的發送郵件類,主站:http://phpmailer.sourceforge.net

里面是兩個文件,一個是class.smtp.php,更有以個是class.phpmailer.php

另外加上官方網站的使用方法:

Examples using phpmailer

1. Advanced ExampleThis demonstrates sending out multiple email messages with binary attachments from a MySQL database with multipart/alternative support.

代碼如下:

  1. require("class.phpmailer.php");   
  2.  
  3. $mail = new phpmailer();   
  4.  
  5. $mail->From     = "list@example.com";   
  6. $mail->FromName = "List manager";   
  7. $mail->Host     = "smtp1.example.com;smtp2.example.com";   
  8. $mail->Mailer   = "smtp";   
  9.  
  10. @MYSQL_CONNECT("localhost","root","password");   
  11. @mysql_select_db("my_company");   
  12. $query?=?SELECT full_name, email,?hoto?ROM employee?HERE?d=$id";   
  13. $result??MYSQL_QUERY($query);   
  14.  
  15. while ($row = mysql_fetch_array ($result))   
  16. {   
  17.     // HTML body   
  18.     $body  = "Hello <font size=\"4\">" . $row["full_name"] . "</font>, <p>";   
  19.     $body .= "<i>Your</i> personal photograph to this message.<p>";   
  20.     $body .= "Sincerely, <br>";   
  21.     $body .= "phpmailer List manager";   
  22.  
  23.     // Plain text body (for mail clients that cannot read HTML)   
  24.     $text_body  = "Hello " . $row["full_name"] . ", \n\n";   
  25.     $text_body .= "Your personal photograph to this message.\n\n";   
  26.     $text_body .= "Sincerely, \n";   
  27.     $text_body .= "phpmailer List manager";   
  28.  
  29.     $mail->Body    = $body;   
  30.     $mail->AltBody = $text_body;   
  31.     $mail->AddAddress($row["email"], $row["full_name"]);   
  32.     $mail->AddStringAttachment($row["photo"], "YourPhoto.jpg");   
  33.  
  34.     if(!$mail->Send())   
  35.         echo "There has been a mail error sending to " . $row["email"] . "<br>";   
  36.  
  37.     // Clear all addresses and attachments for next loop   
  38.     $mail->ClearAddresses();   
  39.     $mail->ClearAttachments();   

2. Extending phpmailerExtending classes with inheritance is one of the most powerful features of object-oriented programming. It allows you to make changes to the original class for your own personal use without hacking the original classes. Plus, it is very easy to do. I've provided an example:

Here's a class that extends the phpmailer class and sets the defaults for the particular site:

PHP include file: mail.inc.php 

  1. require("class.phpmailer.php");  
  2. class my_phpmailer extends phpmailer {   
  3.     // Set default variables for all new objects   
  4.     var $From     = "from@example.com";   
  5.     var $FromName = "Mailer";   
  6.     var $Host     = "smtp1.example.com;smtp2.example.com";   
  7.     var $Mailer   = "smtp";                         // Alternative to IsSMTP()   
  8.     var $WordWrap = 75;   
  9.  
  10.     // Replace the default error_handler   
  11.     function error_handler($msg) {   
  12.         print("My Site Error");   
  13.         print("Description:");   
  14.         printf("%s"$msg);   
  15.         exit;   
  16.     }   
  17.  
  18.     // Create an additional function   
  19.     function do_something($something) {   
  20.         // Place your new code here   
  21.     }   

Now here's a normal PHP page in the site, which will have all the defaults set above:

Normal PHP file: mail_test.php 

  1. require("mail.inc.php");   
  2.  
  3. // Instantiate your new class   
  4. $mail = new my_phpmailer;   
  5.  
  6. // Now you only need to add the necessary stuff   
  7. $mail->AddAddress("josh@example.com""Josh Adams");   
  8. $mail->Subject = "Here is the subject";   
  9. $mail->Body    = "This is the message body";   
  10. $mail->AddAttachment("c:/temp/11-10-00.zip""new_name.zip");  // optional name   
  11.  
  12. if(!$mail->Send())   
  13. {   
  14.    echo "There was an error sending the message";   
  15.    exit;   
  16. }   
  17.  
  18. echo "Message was sent successfully"

4. 使用PEAR::Net_SMTP組件

PEAR真是個好東西,可能非常多人都不怎么用,至少我目前使用他的DB類,發送郵件類都不錯。

需要Net_SMTP類,能去 http://pear.php.net 下載,Net_SMTP類的使用手冊:

http://pear.php.net/manual/en/package.networking.net-smtp.php

我使用上面幾個類,這個是最佳的,不管是速度還是別的,不過操作涉及到一些簡單的smtp協議。

我的使用代碼:

  1. //------------------------------------------   
  2.  
  3. require_once 'Net/SMTP.php'//加載類庫   
  4.  
  5.    
  6. $subject = "測試郵件";   
  7.  
  8. $uid = $_POST['uid']; //from信息   
  9. $content = "<html><body>".$u_email    
  10.  
  11.    ." 你好!<br><br>謝謝,本郵件測試!<br</body></html>"//內容信息   
  12.  
  13. $u_email = "hren@yahoo.com.cn"//發送到的郵箱   
  14.  
  15. $smtp = new Net_SMTP('192.168.0.1'); //smtp服務器   
  16. $smtp->connect(); //連接服務器   
  17. $smtp->helo('unixsky.net'); //發送HELO信息給服務器   
  18. $smtp->mailFrom('hren@unixsky.net'); //發件人地址   
  19. $smtp->rcptTo($u_email); //收件人地址   
  20. $date = date('r'); //獲取發信日期   
  21. $smtp->data("Date: $date\r\nFrom: vdddote@eyou.net\r\nTo: $u_email\r\nSubject: $subject\r\nContent-Type: text/html; charset=\"gb2312\"\r\n\r\n$content\r\n"); //添加發送數據并且發送   
  22. $smtp->disconnect(); //關閉連接 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品露脸av在线| 国产香蕉精品视频一区二区三区| 欧美人成在线视频| 日韩在线视频播放| 久久av中文字幕| 欧美性生交xxxxxdddd| 日韩国产精品视频| 日韩在线视频网站| 成人免费看吃奶视频网站| 另类专区欧美制服同性| 欧美性猛交99久久久久99按摩| 色综合久综合久久综合久鬼88| 日韩精品极品在线观看播放免费视频| 美日韩在线视频| 精品日韩中文字幕| 欧美中文字幕在线观看| 亚洲一区二区三区久久| 久久国内精品一国内精品| 欧美激情在线有限公司| 欧美多人爱爱视频网站| 色综合久久天天综线观看| 国产美女精品视频| 久久久久久久影院| 欧美在线视频一二三| 国语自产在线不卡| 亚洲成色777777在线观看影院| 亚洲福利视频久久| 日韩高清av在线| 日本精品一区二区三区在线播放视频| 日韩国产一区三区| 精品女厕一区二区三区| 欧美精品videosex牲欧美| 国产欧美日韩免费| 欧美黄色片在线观看| 亚洲国语精品自产拍在线观看| 中文字幕精品影院| 久久久久久久国产| 久久综合伊人77777蜜臀| 欧美在线视频播放| 亚洲第一色中文字幕| 久久久黄色av| 日韩av电影院| 亚洲欧洲在线播放| www高清在线视频日韩欧美| 91精品国产综合久久久久久蜜臀| 免费不卡欧美自拍视频| 成人av电影天堂| 久久久久久久电影一区| 日韩福利伦理影院免费| 7777精品视频| 日韩精品免费视频| 国产精品国产三级国产专播精品人| 欧美日韩精品国产| 久久精品免费播放| 国产精品久久久久久久久久99| 日本国产一区二区三区| 亚洲成**性毛茸茸| 久久久999精品视频| 精品中文字幕久久久久久| 成人免费福利在线| 欧美视频专区一二在线观看| 久久久噜噜噜久噜久久| 欧美成人午夜激情| 久久91超碰青草是什么| 亚洲xxxxx性| 97精品在线观看| 日韩免费av一区二区| 深夜福利亚洲导航| 欧美wwwwww| 国产一区二区丝袜高跟鞋图片| 欧美成人一区二区三区电影| 成人国产精品日本在线| 不卡毛片在线看| 欧美限制级电影在线观看| 欧美电影在线观看完整版| 久久久久久国产精品三级玉女聊斋| 欧美精品一区三区| 中文字幕9999| 国产亚洲欧美日韩美女| 韩国欧美亚洲国产| 大荫蒂欧美视频另类xxxx| 国产精品视频网| 国产精品久久久久久av| 日韩精品在线观看一区| 69国产精品成人在线播放| 欧美整片在线观看| 欧洲成人性视频| 一区三区二区视频| 亚洲精品福利在线| 久久久久中文字幕2018| 国产精品午夜国产小视频| 国产日韩中文字幕| 亚洲精品电影网在线观看| 欧美午夜片欧美片在线观看| 国产成人精品免费视频| 深夜成人在线观看| 亚洲国产精品资源| 欧美日韩中文字幕| 日韩欧美在线视频日韩欧美在线视频| 亚洲自拍小视频免费观看| 亚洲91精品在线观看| 奇米一区二区三区四区久久| 亚洲美女免费精品视频在线观看| 一本大道香蕉久在线播放29| 欧美超级乱淫片喷水| 欧美日韩在线视频一区| 欧美精品一区在线播放| 久久6免费高清热精品| 日韩激情av在线播放| 日韩电影免费在线观看| 91在线视频九色| 狠狠色香婷婷久久亚洲精品| 91久久国产婷婷一区二区| 韩国19禁主播vip福利视频| 欧美日韩在线第一页| 91精品美女在线| 欧美日韩美女视频| 欧美一区二区影院| 亚洲影院在线看| 国产精品青草久久久久福利99| 久热精品视频在线免费观看| 91av在线精品| 亚洲色图综合网| 日韩欧美国产视频| 国产精品视频专区| 97在线视频国产| 日韩一二三在线视频播| 亚洲天堂2020| 成人情趣片在线观看免费| 一区二区在线免费视频| 97色在线播放视频| 成人欧美一区二区三区在线| 欧美一级高清免费播放| 久久久综合免费视频| 精品国产乱码久久久久久婷婷| 日韩在线观看网址| 久久久久成人精品| 亚洲视频综合网| 国产精品久久久久久久久免费| 日本不卡视频在线播放| 欧美一区二粉嫩精品国产一线天| 91国产一区在线| 欧美性色19p| 亚洲激情在线观看视频免费| 成人在线观看视频网站| 色天天综合狠狠色| 亚洲mm色国产网站| 国产精品一区二区久久久| 中文精品99久久国产香蕉| 国产精品亚洲网站| 亚洲片国产一区一级在线观看| 国产精品成人一区| 91成人福利在线| 国产精品www网站| 国产日韩精品入口| 永久免费毛片在线播放不卡| 欧亚精品中文字幕| 欧美成人精品h版在线观看| 色噜噜狠狠狠综合曰曰曰88av| 久久夜色精品国产亚洲aⅴ| 日韩精品免费观看| 91中文在线观看| 91久久久久久久久久| 日韩免费在线视频|