论文首页哲学论文经济论文法学论文教育论文文学论文历史论文理学论文工学论文医学论文管理论文艺术论文 |
3.3网上评优投票系统
3.3.1功能:
能实现全校性的评选,快捷、公平,且有效,不允许做票。
3.3.2组成构造
这个系统由3个部分组成——投票页面vote.htm ,处理投票结果的脚本,显示投票页面 。
3.3.3数据表的设计:
3.3.4界面设计与重点、难点代码设计
投票页面
该页面是一个纯HTML文件,它让用户选择自己想选举的候选人,并填写自己的详细资料,以确认投票的有效性。页面显示如图所示。
表单处理脚本
在vote.htm中各项数据都填写完毕后,单击确定投票按钮,表单的数据就被提交,
本次评优共有4个候选人,但只能选两个。故用复选框。
投票的有效性通过是否是本校学生,且是否投过票来判断。
if request("passno")<>"" then
sql="select * from stud where password="&"'"&request("passno")&"'" &"and yitu=0"
set rs=cn.execute(sql)
if rs.eof then%>
<h2 align=center><%response.write"你无权投票"%></h2>
本设计允许少选,不允许多选。通过判断Vote投票界面传递过来的复选按纽值的长度看是否多选。
vo=request("cand")
if len(vo)>4 then%>
<h2 align=center><%response.write "多选了,无效"%></h2>
然后根据所投的票将对应候选人的投票结果字段加1,同时将该投票人的已投字段置为1。
sqq="update stud set yitu=1 where password="&"'"&request("passno")&"'"
cn.execute(sqq)
if instr(vo,"1") then
cn.execute("update stud set result=result+1 where name='李宁'")
end if
if instr(vo,"2") then
cn.execute("update stud set result=result+1 where name='杨兰'")
end if
if instr(vo,"3") then
cn.execute("update stud set result=result+1 where name='江道明'")
(科教范文网 lw.nseaC.Com编辑发布)
值得注意的代码主要有以下几处:
该页面有自动刷新功能,使在线用户可以尽快的看到最新的选举情况。我们这里设定每隔30秒钟自动刷新一次。
<meta http-equiv="refresh" content="10;URL=show.asp">
显示投票时,我们采用了while循环,把候选人及其得票数,整齐地显示在一个表格中,这种技术在数据库查询结果的显示中也经常用到。代码如下:
<%while not hs.eof %>
<tr>
<td width="100%"><center>
<font color="#8000ff"><big>
<%=hs("name")&" "&hs("result")&"票"%>
</big> </font>
</center>
</td>
</tr>
<%hs.movenext%>
<%wend%>
3.4达级考试在线查分系统与计数器的制作
3.4.1功能:
它提供了在线查看成绩。考生可以在网上使用这一系统,通过输入准考证编号来查询达级考试的结果。
3.4.2数据表的设计
与评优系统共用STUd表,表设计同上。
3.4.3界面设计与重点难点代码的设计
该模块需要查询者输入准考证号后来查看结果。若ID1不为空时,表示有表单输入,开始查询数据库。使用 SELECT的SQL指令查询数据库的数据。先设定SQL指令,查询ID符合准考证编号Request.Form("ID1")的数据,下个“Execute”指令,即可开始执行存取、查询数据的动作了。并将查询结果储存到Recordsets组件RS中。
IF Request.Form("ID1")<>"" THEN
Set Conn = Server.CreateObject("ADODB.Connection")
(转载自http://zw.NSEAC.com科教作文网)
若考试通过,则显示考试的结果,包括姓名、准考证编号、总分和考试结果,分别由RecordSets 组件的RS(0)、RS(1)、RS(2)、RS(3)得到。FS.Field.Count表示RecordSets组件的域的总数,由“for I=0 to RS.Fields.count-1”,取得RS(I)各域的数据。配合 <Table> 表格的HTML语法,将结果填入表格的各单元格中。 若还有下一个数据,就使用RS.MoveNext 移到下一个位置。
3.4.4页面访问计数器的制作
利用文件处理组件FILESYSTEM的强大功能来制作,比用Application对象计数器要好,Application计数器当有20分钟没有人连上该网页或关机时,计数器会被归零。而文件计数器却不会因时间而消失。我用Count.txt存放访问人次。代码如下:
whichfile=server.mappath("pic\count.txt")
set myfile=server.createobject("scripting.filesystemobject") 创建一个
set thisfile=myfile.opentextfile(whichfile) 组件对象
visit=thisfile.readline
thisfile.close 读取计数器数据文件Count.txt中的计数数据
visit=visit+1 记录自加一次
length=len(visit)
for i=1 to length
response.write "<img src="&mid(visit,i,1)&".jpg></img>" 将记录的数据用图片显示出来
next
set thisfile=myfile.createtextfile(whichfile,1) 将新计数数据写入文件thisfile.writeline(visit)