標籤:郵箱 ref exception 使用者 郵箱驗證 system 群發 from 表單驗證樣本
本文介紹下,C#實現註冊使用者時,通過郵箱進行驗證的思路與代碼,有需要的朋友,不妨參考下。
一、思路
1,資料庫加兩個字,state欄位(0:未啟用,1:啟用成功),ActiCode:(放啟用碼)。
2,使用者填寫資料,插入資料成功,state欄位預設是0,同時產生一個ActiCode也存入資料庫。
3,提示使用者啟用。發送郵件。郵件中帶一個啟用成功頁的URL,URL裡有兩個參數(1,使用者ID,2:啟用碼)。
4,使用者點選連結,回到啟用成功頁。啟用成功頁的Load事件,得到兩個參數,以這兩個參數為條件查詢資料庫裡的資料,如果有,修改欄位state為1,反之。提示啟用失敗,重新啟用。
二、代碼部分
複製代碼 程式碼範例:
//發送郵件
//Body裡放A標籤(前提是IsBodyHtml 設為true,才會允許發送HTML格式的)
#region
public static void Sends(string email)
{
string formto = "寄件匣地址";
string to = email; //接收郵箱
string content = "";
string body = "";
string name = "寄件匣";
string upass = "密碼";
string smtp = "smtp地址";
SmtpClient _smtpClient = new SmtpClient();
_smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//指定電子郵件發送方式
_smtpClient.Host = smtp; //指定SMTP伺服器
_smtpClient.Credentials = new System.Net.NetworkCredential(name, upass);//使用者名稱和密碼
MailMessage _mailMessage = new MailMessage();
//寄件者,寄件者名
_mailMessage.From = new MailAddress(formto, "別名");
//收件者
_mailMessage.To.Add(to);
_mailMessage.SubjectEncoding = System.Text.Encoding.GetEncoding("gb2312");
_mailMessage.Subject = content;//主題
_mailMessage.Body = body;//內容
_mailMessage.BodyEncoding = System.Text.Encoding.GetEncoding("gb2312");//本文編碼
_mailMessage.IsBodyHtml = true;//設定為HTML格式
_mailMessage.Priority = MailPriority.High;//優先順序
try
{
_smtpClient.Send(_mailMessage);
}
catch (Exception)
{
}
}
#endregion
或者:
複製代碼 程式碼範例:
using System.Net.Mail;
public partial class jqueryText_Limit : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
MailAddress MessageFrom = new MailAddress("[email protected]"); //寄件者郵箱地址
string MessageTo = "[email protected]"; //收件者郵箱地址
string MessageSubject = "郵件主題"; //郵件主題
string MessageBody = "請進行郵箱驗證來完成您註冊的最後一步,點擊下面的連結啟用您的帳號:<br><a target=‘_blank‘ rel=‘nofollow‘ style=‘color: #0041D3; text-decoration: underline‘ href=‘http://www.****.net/regeditOK.aspx‘>啟用</a>"; //郵件內容 (一般是一個網址連結,產生隨機數加驗證id參數,點擊去網站驗證。)
if (Send(MessageFrom, MessageTo, MessageSubject, MessageBody))
{
Response.Write("發送郵件成功");
}
else
{
Response.Write("發送郵件失敗");
}
}
/// <summary>
/// 寄送電子郵件
/// </summary>
/// <param name="MessageFrom">寄件者郵箱地址</param>
/// <param name="MessageTo">收件者郵箱地址</param>
/// <param name="MessageSubject">郵件主題</param>
/// <param name="MessageBody">郵件內容</param>
/// <returns></returns>
public bool Send(MailAddress MessageFrom, string MessageTo, string MessageSubject, string MessageBody)
{
MailMessage message = new MailMessage();
// if (FileUpload1.PostedFile.FileName != "")
// {
// Attachment att = new Attachment("d://test.txt");//發送附件的內容
// message.Attachments.Add(att);
// }
message.From = MessageFrom;
message.To.Add(MessageTo); //收件者郵箱地址可以是多個以實現群發
message.Subject = MessageSubject;
message.Body = MessageBody;
//message.Attachments.Add(objMailAttachment);
message.IsBodyHtml = false; //是否為html格式
message.Priority = MailPriority.High; //發送郵件的優先等級
SmtpClient sc = new SmtpClient();
sc.Host = "smtp.126.com"; //指定發送郵件的伺服器位址或IP
sc.Port = 25; //指定發送郵件連接埠
sc.Credentials = new System.Net.NetworkCredential("[email protected]", "xxx"); //指定登入伺服器的使用者名稱和密碼(寄件者的郵箱登陸密碼)
try
{
sc.Send(message); //發送郵件
}
catch
{
return false;
}
return true;
}
}
您可能感興趣的文章:
JQuery調webservice實現郵箱驗證(檢測是否可用)
jquery無重新整理驗證郵箱地址實現執行個體
JQuery中form驗證出錯資訊的查看方法
jQuery實現使用者註冊的表單驗證樣本
常用js驗證代碼大全(Email、手機號碼、社會安全號碼碼、檔案類型等)
如何提高E-mail收發的成功率
jquery驗證手機號碼、郵箱格式是否正確範例程式碼
驗證使用者輸入的郵箱有效性與正確性的php代碼
使用pear:Net_SMTP類發送郵件的例子
jquery validate在ie8下的bug解決方案
C# 註冊郵箱驗證的實現代碼