SMTP(Simple Mail Transfer Protocol)即簡易郵件傳輸通訊協定,它是一組用於由源地址到目的地址傳送郵件的規則,由它來控制信件的中轉方式。SMTP協議屬於TCP/IP協議簇,它協助每台電腦在發送或中轉信件時找到下一個目的地。通過SMTP協議所指定的伺服器,就可以把E-mail寄到收信人的伺服器上了,整個過程只要幾分鐘。SMTP伺服器則是遵循SMTP協議的發送郵件伺服器,用來發送或中轉寄出的電子郵件。
它使用由TCP提供的可靠的Data Transmission Service把郵件訊息從發信人的郵件伺服器傳送到收信人的郵件伺服器。跟大多數應用程式層協議一樣,SMTP也存在兩個 端:在發信人的郵件伺服器上執行的用戶端和在收信人的郵件伺服器上執行的伺服器端。SMTP的用戶端和伺服器端同時運行在每個郵件伺服器上。當一個郵件服 務器在向其他郵件伺服器發送郵件訊息時,它是作為SMTP客戶在運行。
SMTP協議與人們用於面對面互動的禮儀之間有許多相似之處。首先,運行在發送端郵件伺服器主機上的SMTP客戶,發起建立一個到運行在接收端郵件服務 器主機上的SMTP伺服器連接埠號碼25之間的TCP串連。如果內送郵件伺服器當前不在工作,SMTP客戶就等待一段時間後再嘗試建立該串連。SMTP客戶和伺服器先執行一些應用程式層握手操作。就像人們在轉手東西之前往往先自我介紹那樣,SMTP客戶和伺服器也在傳送資訊之前先自我介紹一下。 在這個SMTP握手階段,SMTP客戶向伺服器分別指出發信人和收信人的電子郵件地址。彼此自我介紹完畢之後,客戶發出郵件訊息。
這篇文章主要介紹了php利用smtp類輕鬆實現寄送電子郵件,smtp類發送郵件的方法其實很簡單,需要的朋友可以參考下
以下就是核心代碼:
<?php require_once "email.class.php"; //******************** 配置資訊 ******************************** $smtpserver = "smtp.126.com";//SMTP伺服器 $smtpserverport =25;//SMTP伺服器連接埠 $smtpusermail = "new2008oh@126.com";//SMTP伺服器的使用者郵箱 $smtpemailto = $_POST['toemail'];//發送給誰 $smtpuser = "new2008oh";//SMTP伺服器的使用者帳號 $smtppass = "您的郵箱密碼";//SMTP伺服器的使用者密碼 $mailtitle = $_POST['title'];//郵件主題 $mailcontent = "<h1>".$_POST['content']."</h1>";//郵件內容 $mailtype = "HTML";//郵件格式(HTML/TXT),TXT為文本郵件 //************************ 配置資訊 **************************** $smtp = new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);//這裡面的一個true是表示使用身分識別驗證,否則不使用身分識別驗證. $smtp->debug = false;//是否顯示發送的調試資訊 $state = $smtp->sendmail($smtpemailto, $smtpusermail, $mailtitle, $mailcontent, $mailtype); echo "<p style='width:300px; margin:36px auto;'>"; if($state==""){ echo "對不起,郵件發送失敗!請檢查郵箱填寫是否有誤。"; echo "<a href='index.html'>點此返回</a>"; exit(); } echo "恭喜!郵件發送成功!!"; echo "<a href='index.html'>點此返回</a>"; echo "</p>";?>