实现思路:在jsp页面上放一个找回密码的入口,然后用户点进去后,要求输入用户名和邮箱,然后根据这个邮箱发送一封邮件,参数是用户名,根据这个用户名点击确认,然后跳转到找回密码页面就可以了。
参考代码:
一.发送邮箱页面
string strUserName = txtUserName.Value.Trim();
string strEail = txtEmail.Value.Trim();
//生成随机密码
string rand = "";
Random ramPwd = new Random();
string pwd = ramPwd.Next(100000, 9999999).ToString();
rand = pwd;
string key = rand + strName + email + "Base";
if (!string.IsNullOrEmpty(strUserName) !string.IsNullOrEmpty(strEail))
{
//发送邮件
StringBuilder sb = new StringBuilder();
sb.Append("亲爱的" + strUserName + "您好:br/br/");
sb.Append("点击以下链接设置新密码。br/br/");
sb.Append("a href =\"" + key + "time=" + time + "\"" + key + "time=" + time + " /abr/br/");
sb.Append("(如果无法点击该URL链接地址,请将它复制并粘帖到浏览器的地址输入框,然后单击回车即可。)br/br/");
sb.Append("注意:请您在收到邮件24小时内使用,否则该链接将会失效。br/br/");
sb.Append("我们将一如既往、热忱的为您服务!br/br/");
string MessageBody = sb.ToString();
Sends(strEail, "no_reply@xxxx.com", "xxxx--找回密码", MessageBody, "123456");
//向find_password_log表添加数据
AddFindPassword(strUserName, strEail,key);
Response.Write("scriptalert('邮件已发送到你的邮箱,请注意查收!');location.href='/';/script");
}
}
//向表find_password_log中添加数据
private void AddFindPassword(string strName, string email, string key)
{
//向find_password_log表中插入随机生成的密码(MD5加密) ,时间,IP
SummerBase.BLL.find_password_log bllFind = new SummerBase.BLL.find_password_log();
SummerBase.Model.find_password_log modelFind = new SummerBase.Model.find_password_log();
if (modelFind != null)
{
modelFind.Md5 = MFunction.Md5New(key).ToString();
modelFind.CreateTime = SummerBase.Utils.Util.TimeToUnixTimes(DateTime.Now.ToString());
modelFind.IP = Page.Request.UserHostAddress;
time = modelFind.CreateTime;
key = modelFind.Md5;
}
bllFind.Add(modelFind);
}
//发送邮件代码
public static void Sends(string email, string formto, string content, string body, string upass)
{
string name = "no_reply@xxxx.com";
string smtp = "smtp.exmail.sina.com";
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, "xxxx公司");
//收件人
_mailMessage.To.Add(email);
_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)
{
}
}
用C语言基本是做不出来的,要做工程量也极大,一切底层的都要从头做,你可以考虑用c++做,也不是一会儿就做的
你好,很高兴为您解答。文件上传至邮箱,是有特定的程序的。首先的话,您需要将您的文件命名好,免得弄错或者发错,如果是电脑的话,可以先将文件放至桌面,最好是显眼的位置,节省时间,然后单击右键,有个发送至,一般是手机或者邮箱,如果不行的话,可以用一个有账号的其他邮箱进行发送,登录后可以找到QQ邮箱的账号,并在文件那一栏处找到自己需要发送的文件,即可发送过去。
试试JMAIL程序.
现在服务器提供较多的是JMAIL组件.
可以去搜索一下.
用JavaScript在客户端验证就行了,用不到Java。
当然这样只能判断字符串是否符合邮箱格式,是不是真实邮箱还要发信才能验证。
//判断一个输入量是否为邮箱email,通过正则表达式实现。
//检查email邮箱
function isEmail(str){
var reg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;
return reg.test(str);
}
...信息及联系方式(最好是深圳的高中学校),急~~~有的话发我邮箱... 1、深圳市宝安中学成立于1984年8月,后变更为宝安中学(集团),是深圳市宝安区重点中学,是广东省首批国家级示范性普通高中。...
有什么加速器支持加持谷歌邮箱 迅游加速器首先我们打开迅游加速器,然后我们再直接在谷歌账号添加讯飞加速器,就可以加速谷歌账号。什么加速器可以加速QQ邮箱 并没有什么加速器加速QQ邮箱的,这个是跟网速有关...
如何注册腾讯企业邮箱? 1、腾讯企业邮箱怎么开通注册:首先我们打开腾讯企业邮箱官网。【点击进入】打开后,点击右上角的“注册新企业”接着点击最中间的“立即注册”按钮。2、百度搜索腾讯企业邮箱,点击进去官...
我网络赌博输了10w.报警我会受到什么处罚 网络赌博输了10万元,数额较大,涉嫌赌博罪,应当判处三年以下有期徒刑,主动投案自首可以判缓刑;如果不构成犯罪,触犯治安管理处罚法,行政拘留15天以下并且罚款...
十位数的邮箱是啥邮箱 邮箱没有多少位数字的规定邮箱就是一种通讯工具,可以收发文件,比如个人用的邮箱:QQ邮箱,163邮箱,139邮箱等等,可以在网页搜索下载使用。邮箱有两种含义。邮箱,原指由邮局设立的...
广州浦发银行天河支行电话是多少? 1、我帮您查了一下,广州浦发银行开发区支行电话是:(020)32211308,希望能帮到您。2、我帮您查了一下,广州浦发银行中山分行电话是:(0760)8998232...