世界上没有伟大的人,只有平凡的人做伟大的事!
用ASP写的模块生产代码较多、复杂,不容易修改。建议自己学会自己写代码,才能进步。
今天用ASP写了一个注册模块 登录模块也也在了一起
感觉太好了
因为一直在测试,测试,测试
突然发现原来测试也这么有意思
需要考虑的问题不是一般的多 而是N多
现在这个注册和登录模块因该算是比较完善了吧
处理逻辑
捕获用户行为
如果是注册行为:
捕获用户提交的信息:包括用户名,用户密码,用户邮箱等等乱七八糟的东西 从数据库中查询用户名和用户提交的用户名信息相匹配的记录 如果没有找到这样的记录
判断用户提交过来的数据的有效性,检测是否都为合法 如果检测通过,信息都合法
则将这些信息插入数据库之中,并自动跳转到regservice.asp页面 否则
提示用户输入了不合法数据,并自动跳转至reg.asp页面 否则
提示用户,该用户名已经被别人注册了,并自动跳转至reg.asp页面
如果是登录行为:
捕获用户提交的信息:包括用户名称和密码 从数据库中查找用户名为XXX的用户 如果没有查找到符合条件的记录
提示用户:用户名出错,并自动跳转到reg.asp 否则
比较查询到的记录中的用户密码和用户提交的用户密码 如果两个相比较,相等
提示用户登录成功,并自动跳转到regservice.asp 否则
提示用户密码出错,并自动跳转到reg.asp
如果是其他:
直接重定向到reg.asp
总共三个页面文件reg.asp、regOK.asp、regservice.asp
reg.asp用于和用户交互,接收用户的信息
regOK.asp处理整个逻辑
regservice.asp登录或注册成功之后显示
现在把regOK.asp的代码也贴出来吧,其他两个太简单了 嘿嘿....
<%
set conn=server.createobject(\
connstr=\conn.open connstr function conn_end() conn.close set conn=nothing end function
action = request(\select case action
case \
companyname = request(\ companyman = request(\ regname = request(\ regpass = request(\
companyphone = request(\ companymobile = request(\ versionclass = request(\
sql = \ set rs = conn.execute(sql) if rs.eof or rs.bof then
if companyname<>\ sql=\
values('\ 'sql=\ conn.execute sql set rs = nothing conn_end()
session(\
response.Write(\
response.Write(\您已经成功登记,欢迎您的试用');\ response.Write(\ response.Write(\ response.End() else
set rs = nothing conn_end()
response.Write(\操作数据库失败\ response.End() end if else
set rs = nothing
response.Write(\
response.Write(\对不起,您注册的用户名称已经被占用!!');\ response.Write(\ response.Write(\ end if
case \
loginname = request(\ loginpass = request(\
sql=\ set rs = conn.execute(sql) if rs.eof or rs.bof then set rs = nothing conn_end()
response.Write(\ response.Write(\用户名出错!!!');\ response.Write(\ response.Write(\ response.End() else
if loginpass = rs(\ session(\ set rs = nothing conn_end()
response.Write(\ response.Write(\您已经登录成功,欢迎您的试用');\ response.Write(\ response.Write(\ response.End() else
set rs = nothing conn_end()
response.Write(\ response.Write(\用户密码出错!!!');\ response.Write(\ response.Write(\ response.End() end if end if case else conn_end()
response.Redirect(\ response.End() end select %>
1, 在站点里右键新建一文件login.asp用来做登录页面;同样,之前已经建了和数据库连接的文件conn.asp。所以在你新建的login.asp
中的“应用程序”----“数据库”标签里面就自动有了\。

