大连网站制作客服
主营业务
  • 网站制作
  • 网站维护
  • 网站推广
  • 域名空间
联系电话
联系人:尹先生
QQ:1050706570
E-mail:biz@noonenet.cn
地址:大连市甘井子区哲林北园29号
·首页 >> 网站技术 >> Asp - 实现邮箱激活用户[简要思路及实例展示]

Asp - 实现邮箱激活用户[简要思路及实例展示]

  更新时间:2009-10-19 17:47:47    编辑:阿帆

这个问题很Easy,表面上看着有点难度,实际上经过仔细的思考后,确实很Easy,下面我就来介绍下Asp用邮箱激活用户的简要思路并附实例。

简要思路:主要是在用户注册时利用Jmail技术给用户发一封邮件,邮件内容附上验证连接并附上用户注册的ID,例如:http://www.noonenet.cn/test.asp?usrid=1,然后在test.asp页面做验证,并激活用户即可。

简单实例

假设一数据库db1.mdb,有一表test_usr,结构如下:
usrid usrname ischeck

以下是conn.asp连接数据库页面代码:

<%
 Dim conn,connstr,dbpath
 dbpath = ""
 Set conn = server.CreateObject("Adodb.Connection")
 connstr = "Provider=Microsoft.Jet.OleDb.4.0;Data source="&server.mappath(dbpath & "db1.mdb")
 conn.open connstr

 If Err Then
  response.write "数据库出现连接出现异常."
  Err.clear
  response.End()
 End If

 Function closeconn()
  If IsObject(conn) Then
   conn.close
   Set conn = Nothing
  End If
 End Function
%>

以下是reg.asp用户注册页面代码:

<!--#include file="conn.asp"-->
当前注册用户<br/>

<%
 sqlstr = "select usrname,ischeck from test_usr order by usrid desc"
 Set rs = conn.execute(sqlstr)
 If Not rs.bof Or Not rs.eof Then
  Do While Not rs.eof
   response.write rs(0) & "," & rs(1)
  rs.movenext
  loop
 End If
 rs.close
 Set rs = nothing
%>

<form name="form1" id="form1" action="?Action=reg" method="post">
<br />注册表单

请您输入用户名:<input type="text" name="usrname" /><br />
请您输入邮箱:<input type="text" name="usrmail" /><br />

<input type="submit" name="btn1" value="注册" />
</form>

<%
 If request.querystring("Action")="reg" Then
  usrname = request.Form("usrname")
  usrmail = request.Form("usrmail")

  sql = "insert into test_usr(usrname) values('"&usrname&"')"
  conn.execute(sql)

  sqlstr = "select usrid from test_usr order by usrid desc"
  Set rs = conn.execute(sqlstr)
  If Not rs.bof Or Not rs.eof Then
   usrid = rs(0)
  End If
  rs.close
  Set rs = Nothing

  Set JMail = Server.CreateObject("JMail.Message")
  '建立Jmail对象
  JMail.silent=true                                              
  'silent:检查所有的邮件在 JMail.execute() 执行后返回真或假根据信件发送的成功与否
  JMail.Logging = True
  'Loggin:能/不能登录用Jmail
  JMail.Charset = "gb2312"
  'Charset:设置邮件的字符集
  JMail.MailServerUserName = "***"
  'MailServerUserName:发送邮件邮箱用户名
  JMail.MailServerPassword ="***"
  'MailServerPassword:发送邮件邮箱密码
  JMail.ContentType = "text/html"
  'ContentType:邮件头设置,默认为text/plain,如发送html信息,则用text/html
  JMail.Priority = 1
  'Priority:设置邮件优先级,数值越小,优先级越高
  JMail.From = "***"
  'From:接收邮件者看到的邮件来自
  JMail.FromName = "No.1网络"
  'FromName:接收邮件者看到的来信者的姓名
  JMail.AddRecipient (usrmail)
  'AddRecipient:收邮件邮箱地址
  JMail.Subject = "恭喜您成为No.1网络的会员..."
  'Subject:邮件的主题
  JMail.Body = "恭喜您成为No.1网络的会员...<br/>请单击下列地址激活会员 -- <a href='http://www.noonenet.cn/test/test.asp?usrid="&usrid&"' target='_blank'>http://www.noonenet.cn/test/test.asp?usrid="&usrid&"</a>"
  'Body:邮件的内容
  If JMail.Send ("***") Then
  'Send:发送邮件服务器的smtp
  response.write "Success..."
  Else
  response.write "fail...."
  End If
  Set JMail = Nothing

  response.write "恭喜您,注册用户成功,请到您的邮箱激活此用户..."

 End If
%>

 

以下是test.asp验证页面代码:

<!--#include file="conn.asp"-->
<%
 usrid = request.querystring("usrid")

 sqlstr = "update test_usr set ischeck=1 where usrid="&usrid&""
 conn.execute(sqlstr)

 sqlstr = "select usrname from test_usr where usrid="&usrid&""
 Set rs = conn.execute(sqlstr)
 If Not rs.bof Or Not rs.eof Then
  response.write "恭喜您," & rs(0) & "您的会员激活成功。。。<br />欢迎使用"
 Else
  response.write "对不起,系统找不到此用户,无法激活..."
 End If
 rs.close
 Set rs = Nothing
%>


这样就可以实现邮箱激活用户了,简单吧。哈。另外,真正做的时候,你可以把验证链接搞得神秘些,例如:http://www.noonenet.cn/test.asp?usrid=ea34lfal145125这样,一般都这种形式吗,呵。

 

原载: No.1网络工作室 http://www.noonenet.cn/
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。


Tags:asp 邮箱 邮件 激活 注册 用户
同类文章:
· 实现网页动态标题栏
· Asp - 截取重复字符串
· ASP 3.0与ASP 2.0的区别及改进
· 利用正则清除、去掉html标记
· asp程序错误详细说明列表
返回新闻列表
top
本站关键字:大连网站制作 - 大连网站建设 - 大连网页制作
CopyRight © 2009-2012 No.1网络工作室 All Rights Reserved  sitemap
地址:大连市甘井子区哲林北园29号 电话:13889684613 E-mail:biz@noonenet.cn QQ:1050706570
logo