在写一些面向用户的网站类的程序时,必不可少的一个就是注册,通常情况下,我们会选择邮箱验证后注册,或者手机发送验证码注册。上篇文章中已经简单的描述了手机验证注册,这篇主要介绍一下邮箱验证。
邮箱验证的步骤主要是:用户填写邮箱账号并提交、后台判断输入是否是有效邮箱,如果为有效邮箱,发送验证链接到输入的邮箱中,用户通过邮箱的链接,成功注册。
想实现这个功能,首先,在填写注册信息时,后台生成一个默认的状态(例如:state=0,表示未验证)存入数据库。提交表单后,把输入的内容存入数据库,然后通过send命令,向指定邮箱发送验证链接,用户通过点击链接,是默认状态更改(例如:state=1,表示验证通过),注册既成功。
发送邮件的代码如下:
protected bool sendTheMail(string smtpserver, string smptport, string userName, string pwd, string strfrom, string strto, string subj, string bodys)
{
SmtpClient _smtpClient = new SmtpClient();
_smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//指定电子邮件发送方式
_smtpClient.Host = smtpserver;//指定SMTP服务器
if (YXShop.Common.WebUtility.isNumeric(smptport))
{
int port = Convert.ToInt32(smptport);
if (port > 0)
_smtpClient.Port = port;
}
_smtpClient.Credentials = new System.Net.NetworkCredential(userName,pwd);//用户名和密码
MailMessage _mailMessage = new MailMessage(strfrom, strto);
_mailMessage.Subject = subj;//主题
_mailMessage.Body = bodys;//内容
_mailMessage.BodyEncoding = System.Text.Encoding.Default;//正文编码
_mailMessage.IsBodyHtml = true;//设置为HTML格式
_mailMessage.Priority = MailPriority.High;//优先级
try
{
_smtpClient.Send(_mailMessage);
return true;
}
catch (Exception e)
{
throw e;
}
}
private bool SendTEmail(string strto, string subj, string bodys)
{
userReg_Accessor target = new userReg_Accessor(); // TODO: 初始化为适当的值
string smtpServer = "smtp.163.com"; // TODO: 初始化为适当的值
string smptport = "25"; // TODO: 初始化为适当的值
string userName = "**@163.com"; // TODO: 初始化为适当的值
string pwd = "**"; // TODO: 初始化为适当的值
string strFrom = "**.com"; // TODO: 初始化为适当的值
strto = "**.com"; // TODO: 初始化为适当的值
subj = "hello Miss lu"; // TODO: 初始化为适当的值
bodys = "----------"; // TODO: 初始化为适当的值
bool bl = sendTheMail(smtpServer, smptport, userName, pwd, strFrom, strto, subj, bodys);
return bl;
}
先说说这六个参数,smtpSever是邮件服务器,如果为smtp.163.com 表示网易邮箱服务器,如果是qq邮箱,则为smtp.qq.com,如果是其他的邮箱,可以查询网络。smptport是端口号,通常情况下网易邮箱和qq邮箱发送端端口号都是25,userName是发送端账号,通常为发送邮箱账号,与strFrom相同。pwd为发送端邮箱密码,strto为注册的邮箱,即输入的有效邮箱账号。subj是发送的邮件的主题,bodys是发送的邮件正文。
如果所有配置都正确,调用send方法,即可发送邮件。在邮件正文中做好设置,即可实现通过邮箱注册的功能。
简单总结如上,如有错误,欢迎指出,不胜感激!
分享到:
相关推荐
———–注册页前台 代码如下: <%@ Page Language=”C#” AutoEventWireup=”true” CodeBehind=”Registe.aspx.cs” Inherits=”CSDN博客.Registe” %> <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 ...
登录注册功能(要求使用邮箱验证(邮箱发送验证码))验证码之类的 自动识别登录的账号为用户账号还是管理员账号 普通用户进入界面(界面拥有3项功能 可以像微信一样在正下方分开设置button) 管理宿舍功能 2.1...
———————————————— 原文链接:https://blog.csdn.net/u014388322/article/details/128770495 源码文件说明: 1:源代码 2:数据库sql文件(我使用的mysql数据库) 3:一套完成的配置视频流程讲解...
邮箱验证多数人不会使用,还是短信方便点,短信可以采用号码认证和验证码的方式,前者稍微便宜的,关于性价比和上手程度我推荐个推, 于是有了今天这篇案例记录,对于H5向uniapp进行数据传输,我建议看我这篇...
Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...
该资料是《Visual C++ 2010入门经典(第5版)》的源代码及课后练习答案 对应的书籍资料见: Visual C++ 2010入门经典(第5版) 基本信息 原书名: Ivor Horton's Beginning Visual C++ 2010 原出版社: Wrox 作者: ...
Hishop5.4.1正式版发布以来,受到大批网商热情关注,在此,Hishop... 域名验证步骤:点击这里下载验证文件(一淘)——保存——上传验证文件(商城后台)——立刻验证(一淘) 4.最后一步基本资料的填写,等一淘审核。
Java局域网通信——飞鸽传书源代码,大家都知道VB版、VC版还有Delphi版的飞鸽传书软件,但是Java版的确实不多,因此这个Java文件传输实例不可错过,Java网络编程技能的提升很有帮助。 Java聊天程序,包括服务端和...
2) 注册会员,成为该网站的固定买家,注册会员在购买商品后有一定的积分,可以用积分锐换积分礼品和商品等,厂家推出的积分锐换礼品,只针对注册用户,会员可以查询自己的积分或者是积分的兑换情况 3) 本网店系统...
SN=".@urlencode( $TD_SN_INFO )."&UNIT=".@urlencode( $TD_UNIT_INFO )."&PORT=".$SERVER_PORT."&VER=".@urlencode( $VERSION_INFO ) ), "错误的序列号" ”验证是否授权,如未授权就会篡改并记录用户相关信息的同时...
【增加】多个邮件服务器地址配置,随机邮箱发送注册确认邮件等。 【增加】在栏目展示标签中增加了Where条件筛选,可以使用类似于:ename like 'a' and parentid=1等SQL语句筛选。 【增加】采集每个URL时间设定...