ASP生成靜態網頁,學習CASE的用法,以及「權限」的一種控制方法 - 中國WEB開發者網絡 (http://www.webasp.net) -- 技術教程 (http://www.webasp.net/article/) --- ASP生成靜態網頁,學習CASE的用法,以及「權限」的一種控制方法 (http://www.webasp.net/article/16/15273.htm) |
| -- 作者:未知 -- 發佈日期: 2004-12-03 |
| <form action="calscore.asp?action=do" method="post" name=form1> ... </form>
<!--#include file="connect.asp"--> <% if session("logstatus")<>1 then %> <p align="center"> <font size="5" ><b>你還沒有登錄,沒有權利瀏覽本頁,請先<a href="login.asp">登錄</a>!</b></font></p> <% else '讀取login.htm附帶的SubjectNo、StudentID及Name參數值 Subject=Request("Subject") StudentID=Request("StudentID") Name=Request("Name") ******** 路徑和文件的建立 ******************************************************************** '格式化日期 Function format(date) format=datepart("yyyy",date)&"年"&datepart("m",date)&"月"&datepart("d",date)&"日 "&formatdatetime(date,vbshorttime) End Function dim fmonth,fday,fhour,fminute,fsecond fmonth=month(date) if len(month(date))<2 then fmonth="0"&month(date) end if fday=day(date) if len(day(date))<2 then fday="0"&day(date) end if fhour=hour(now()) if len(hour(now()))<2 then fhour="0"&hour(now()) end if fminute=minute(now()) if len(minute(now()))<2 then fminute="0"&minute(now()) end if fsecond=second(now()) if len(second(now()))<2 then fsecond="0"&second(now()) end if newspath=year(date)&fmonth&fday newsurl=fhour&fminute&fsecond putdate=format(now()) if request("action")="do" then path=server.MapPath("kaoshi") /.定義的一個文件 set fso=server.CreateObject("Scripting.FileSystemObject") if fso.FolderExists(path)=false then fso.CreateFolder(path) end if path=path&"/"&newspath if fso.FolderExists(path)=false then fso.CreateFolder(path) end if path=path&"/"&newsurl&".shtml" /.生成SHTML頁面 set ts=fso.OpenTextFile(path,2,true,-2) ******** 生成HTML頁面 *********************************************************************** ts.writeline"<html>" ts.writeline"<head>" ts.writeline"<title>"&name&"" ts.writeline","&subject&"" ts.writeline" - 成績結果</title>" ts.writeline"<meta http-equiv=""Content-Type"" content=""text/html; charset=gb2312"">" ts.writeline"<link rel=""stylesheet"" href=""css.css"" type=""text/css"">" ts.writeline"</head>" ts.writeline"" ts.writeline"<body bgcolor=""#FFFFFF"" text=""#000000"">" ts.writeline"<table width=""100%"">" ts.writeline"<tr>" ts.writeline"<td width=""100%"">" ts.writeline"<h2>" ts.writeline""&Name&"" ts.writeline",你的考試成績如下表:</h2>" dim score score=0 sqlt="select * from 考題類型" rst.open sqlt,conn,1,1 do while not rst.eof tn=rst("id") tname=rst("name") ts.writeline"<b>" ts.writeline""&tname&"" ts.writeline"</b><br><br>" sql="Select * From "&Subject&" where 題目類型="&tn&" order by 題目序號" rs.open sql,conn,2,2 while not rs.eof answer=rs("正確答案") select case rs("題目類型") case 1: selection=Request("No"&rs("題目序號")) ts.writeline rs("題目序號") ts.writeline"、"&selection&"<br>" case 2: selection="" for n=1 to 4 if not Request("No"&rs("題目序號")&"-"&n)="" then selection=selection&Request("No"&rs("題目序號")&"-"&n) end if next ts.writeline rs("題目序號") ts.writeline" 、"&selection&"<br>" case 3: selection=Request(rs("選擇項1")) ts.writeline rs("題目序號") ts.writeline"、"&selection&"<br>" case else: selection=Request(rs("選擇項1")) ts.writeline rs("題目序號") ts.writeline"、" ts.writeline"<font color=red>未確定評分規則!</font><br>" ts.writeline""&selection&"<br>" end select if answer=selection then score=score+rs("本題分數") end if rs.movenext wend rs.close ts.writeline"<br>" rst.movenext loop 'response.write score 'response.end ts.writeline"<br>" ts.writeline"<font color=red>評分:</font>" ts.writeline""&score&"" ts.writeline"<br>" ts.writeline"</td></tr></table>" ts.writeline"</body>" ts.writeline"</html>" end if %> |
| webasp.net |