欢迎光临爱时尚女性网
 

ASP开发在线考试程序方案与代码(二)

2012-12-6 编辑:admin 来源:爱时尚女性网 阅读次数:531
  导读:Sendregister.asp 这一页从register.asp 中取得表单域的内容,将它们插入数据库中。要注意用户名必须是唯一的。所以,首先查询要验证输入的用户名是否已经存在。如果是的话,用户被重新引回register.asp 页,并被要求选择另一个用户名。如果用户名是新的,输入的内容就被传递给数...
Sendregister.asp
这一页从register.asp 中取得表单域的内容,将它们插入数据库中。要注意用户名必须是唯一的。所以,首先查询要验证输入的用户名是否已经存在。如果是的话,用户被重新引回register.asp 页,并被要求选择另一个用户名。如果用户名是新的,输入的内容就被传递给数据库。
sql_findmember = "select count(*) from loginuser where username = '" & username &"'"
Set RS_findmember = application("Conn").Execute(sql_findmember)
If RS_findmember(0) < > 0 Then
session("message") = "THE ENTRY HAD BEEN INSERTED EARLIER .. Please try another log in name"
response.redirect "register.asp"
End If
If RS_findmember(0) = 0 Then
sql_insert = "insert into loginuser (username,useremail,passWord) _
values('" & username & "','" & useremail & "', '" & pwd &"') "
Set RS_insert = Application("Conn").Execute(sql_insert)
Session("message") = "THE ENTRY HAS BEEN INSERTED .. Thank You"
response.redirect "index.asp"
End If
这样,如果RS_findmember(0) 返回的值是0,就表示用户名在数据库中不存在,名字就被输入了。会员就可以使用站点的其它部分了。反之,如果RS_findmember(0) 返回的值大于0,用户就被引导回注册主页,并被要求填写一个新的用户名。
还要注意,在向数据库中插入数据之前有一些事情需要警惕。替换函数用来确保当访问者键入了"'",就需要用''代替。
username = replace(request.form("txt_name"),"'","''")
Checkuser.asp
在应用程序的开始,访问者键入了他们的口令之后,他们的细节被指向了一页,如sendregister.asp,来检验一下具体的用户名和口令在数据库中是否存在。
sql_check = "select count(*) from loginuser where username ='" & _
username &"' and passWord = '" & useremail &"'"
Set RS_check = application("Conn").Execute(sql_check)
If RS_check(0) < > 0 Then
session("username") = request.form("username")
response.redirect "default.asp"
End If
If RS_check(0) = 0 Then
Session("error") = "WRONG USER NAME OR PASSWORD"
response.redirect "index.asp"
End If
sql命令检查一个特定的用户是否已经注册了。如果返回值为0,就表明用户名或email 无效,将用户引导回注册页。
如果是会员,就被引导到default.asp 页。这一次又用到了替换函数,以保证如果会员键入了‘ (单引号),就要用''
(双引号)来替换。
username = replace(request.form("username"),"'","''")
useremail = replace(request.form("password"),"'","''")
选择一个测验
Default.asp
一旦成功登录,就出现第二个界面,提供会员可以选择的测验科目的列表。在本例中,我们有HTML 和DHTML ,当然可以增加表格以提高主题数。Default.asp 要求表格安装一个下拉菜单,其中包含主题的列表。查询数据库,从试卷的表格中搜集两个域。
sql_papers = "select *id, topic from paper sort order by topic asc"
SET RS_papers = Application("Conn").Execute(sql_papers)
为了在下拉菜单中显示结果,使用以下代码:
SELECT size=1 name=select1 onchange="msec(document.form1._
select1.options[document.form1.select1.selectedIndex].value);" >
< option value="0" >Select the examination
< %Do while not RS_papers.EOF% >
< option value="< %=RS_papers("id")% >" >< %=lcase(RS_papers("topic"))% >< /OPTION >
< %
RS_papers.MoveNext
Loop
% >
msec函数在X值的基础上调用 redirect.asp,把查询字符串: ?x 的值作为下拉菜单中被选择的项的值。
function msec(x)
{if (x==0)
{ alert("Please select any one of the Examinations")
}
else
{ location.href="redirect.asp?section=" + x
}
}

文章出自:爱时尚女性网www.aspjc.com,尊重版权是美德,转载请保留原地址,感谢合作!

 
 
链接交换请联系:QQ:790646582 首页链接要求百度快照在一周以内,不符合以上要求的各站,我们将定期把友情连接转入内页,谢谢合作。
Copyright @ 2012-2015 爱时尚女性网 保留所有权利吉ICP备14005127号-1 服务QQ:175529508 e-mail:zk8312@163.com
本站部分资源来自网友上传,如果无意之中侵犯了您的版权,请联系本站,本站将在3个工作日内删除。