asp.net mvc 注册中的邮箱激活功能实现
2017-05-12 16:20
375 查看
基本流程图
注册页面就不再写出,现在将发送邮件的代码粘贴出来
说明:
填写服务器地址相关的用户名和密码信息 client.Credentials = new System.Net.NetworkCredential("xxxxxxxx@163.com", "xxxxxx");
这个需要填写发件方的邮箱名和密码
此处发送的邮件内容不会显示出来链接的地址信息,只会以超链接的方式存在,效果如图所示:
3. 验证码是否有效分为两种情况:1.验证是否在规定时间内,激活链接;2.验证码和数据库中保存的是否相同
实现思路:
页面需要三个页面:1.注册页面;2.激活页面;3.失败页面。
数据库表中添加一个激活的状态字段-1或1 (-1为未激活,1未激活),在添加一个验证码字段validateCode,最后在添加一个注册时间字段registeredDate
程序中,注册页面添加注册信息,随机生成注册验证码(GUID)添加到数据库中,把用户id和验证码作为参数发送到邮箱中
因为用的是asp.net mvc 所以不需要自己写代码获取url中的参数,action 中的参数只要和url 中的对应就行了,action会帮我们自动的获取url 中的参数信息
通过action 中的参数信息查询数据库,判断是否可以激活注册信息
注册页面就不再写出,现在将发送邮件的代码粘贴出来
public ActionResult SendEmial() { int customerID= 1; string validataCode = System.Guid.NewGuid().ToString(); try { System.Net.Mail.MailAddress from = new System.Net.Mail.MailAddress(xxxxxxxx@163.com, "wode"); //填写电子邮件地址,和显示名称 System.Net.Mail.MailAddress to = new System.Net.Mail.MailAddress(xxxxx@qq.com, "nide"); //填写邮件的收件人地址和名称 //设置好发送地址,和接收地址,接收地址可以是多个 System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage(); mail.From = from; mail.To.Add(to); mail.Subject = "主题内容"; System.Text.StringBuilder strBody = new System.Text.StringBuilder(); strBody.Append("点击下面链接激活账号,48小时生效,否则重新注册账号,链接只能使用一次,请尽快激活!</br>"); strBody.Append("<a href='http://localhost:3210/Order/ActivePage?customerID=" + customerID+ "&validataCode =" + validataCode + "'>点击这里</a></br>"); mail.Body = strBody.ToString(); mail.IsBodyHtml = true;//设置显示htmls //设置好发送邮件服务地址 System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient(); client.Host = "smtp.163.com"; //填写服务器地址相关的用户名和密码信息 client.Credentials = new System.Net.NetworkCredential("xxxxxxxx@163.com", "xxxxxx"); //发送邮件 client.Send(mail); } catch {} return new EmptyResult(); }
说明:
填写服务器地址相关的用户名和密码信息 client.Credentials = new System.Net.NetworkCredential("xxxxxxxx@163.com", "xxxxxx");
这个需要填写发件方的邮箱名和密码
此处发送的邮件内容不会显示出来链接的地址信息,只会以超链接的方式存在,效果如图所示:
3. 验证码是否有效分为两种情况:1.验证是否在规定时间内,激活链接;2.验证码和数据库中保存的是否相同
实现思路:
页面需要三个页面:1.注册页面;2.激活页面;3.失败页面。
数据库表中添加一个激活的状态字段-1或1 (-1为未激活,1未激活),在添加一个验证码字段validateCode,最后在添加一个注册时间字段registeredDate
程序中,注册页面添加注册信息,随机生成注册验证码(GUID)添加到数据库中,把用户id和验证码作为参数发送到邮箱中
因为用的是asp.net mvc 所以不需要自己写代码获取url中的参数,action 中的参数只要和url 中的对应就行了,action会帮我们自动的获取url 中的参数信息
通过action 中的参数信息查询数据库,判断是否可以激活注册信息
相关文章推荐
- asp.net mvc 注册中的邮箱激活功能实现
- 简单的asp.net模拟邮箱系统基础实现(二 (1)具体版块功能的实现及关键代码之注册页面)
- (分享)ASP.NET 实现注册用户 邮箱激活
- ASP.NET 实现注册用户 邮箱激活
- asp.net实现邮箱验证功能,通过邮箱链接激活该帐号
- asp.net 实现邮箱验证(注册的时候发送邮件激活链接的那种)
- asp.net实现邮箱验证功能,通过邮箱链接激活该帐号
- asp.net实现邮箱验证功能,通过邮箱链接激活该帐号
- asp.net实现一个用户进行注册的时候同时发送一个邮件到注册人的邮箱,通过发送的邮箱链接来激活该帐号
- asp.net实现一个用户进行注册的时候同时发送一个邮件到注册人的邮箱,通过发送的邮箱链接来激活该帐号
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(17)-注册用户功能的细节处理(各种验证)
- ASP.NET MVC Controller激活系统详解:默认实现
- ASP.NET jQuery 食谱12 (通过使用jQuery validation插件简单实现用户注册页面验证功能)
- ASP.NET MVC Controller激活系统详解:默认实现
- ASP.NET MVC通过发送邮件激活注册用户
- ASP.NET jQuery 实例12 通过使用jQuery validation插件简单实现用户注册页面验证功能
- asp.net MVC实现简单的上传功能
- 通过Asp.Net MVC的区域功能实现将多个MVC项目部署
- ASP.NET MVC实现网站验证码功能(上)
- Asp.Net MVC3 简单入门第一季(五) 通过Asp.Net MVC的区域功能实现将多个MVC项目部署到一个站点