发送电子邮件 ,邮件中包含激活的 连接, 连接应有用户名 激活码 及 有限期, 当用户通过电子邮件点击 你提供的连接地址后,连接到你指定地址 更新数据库即可 。
这个指定地址可以建立一个页面 A.ASPX
注意:
1、注册成功的时候 数据库中的激活字段为0,同时生成一位“随机数加密 ”存到数据库。
2、用邮箱发给用户超链接加上刚刚生成的随机数加密传过去。类似A.ASPX?aa=$$@!$asd%!#sd
3、当用户点击了 把加密数与数据库里的比较,相等的话 激活字段为1,并且设置一个新的随机数更新到数据库
此时用户在点击以前链接的时候 就应经与数据库中的不一样了。即 失效。。。
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(
"sengoo@126.com"
);
string
MessageTo =
"237254883@qq.com"
;
string
MessageSubject =
"邮件主题"
;
string
MessageBody =
"请进行邮箱验证来完成您注册的最后一步,点击下面的链接激活您的帐号:<br><a target='_blank' rel='nofollow' style='color: #0041D3; text-decoration: underline' href='http://www.ipyy.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();
message.From = MessageFrom;
message.To.Add(MessageTo);
message.Subject = MessageSubject;
message.Body = MessageBody;
message.IsBodyHtml =
false
;
message.Priority = MailPriority.High;
SmtpClient sc =
new
SmtpClient();
sc.Host =
"smtp.126.com"
;
sc.Port = 25;
sc.Credentials =
new
System.Net.NetworkCredential(
"sengoo@126.com"
,
"xxx"
);
try
{
sc.Send(message);
}
catch
{
return
false
;
}
return
true
;
}
}