ASP在线问答的实例代码_ASP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:ASP利用XML打包指定文件夹 并上传到WEB目录中,自行解包
'======================== '文件1 'Pack.asp '更改 Cpathname 这一变量 '将在当前目录生成一个DATA.XML文件 '将DATA.XML及文件2(install.asp)上传至WEB根目录 '运行install.asp解包 '手动删除以上两个文件 '======================== % Option Explic

ASP在线问答的实例代码首先,是HTML文件,为Test.asp,代码如下:

  1. <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> 
  2. <% 
  3. if session("username")="" then 
  4. Response.Write("<script>alert('请登陆后在进行操作!');window.location='login.asp?reURL=Test.asp';</script>") 
  5. Response.End() 
  6. end if 
  7. %> 
  8. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
  9. <html xmlns="http://www.w3.org/1999/xhtml"> 
  10. <head> 
  11. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
  12. <title>情景问答</title> 
  13. <style type="text/css"> 
  14. <!-- 
  15. body {}{ 
  16. font-size: 12px; 
  17. color: #0066FF; 
  18. } 
  19. input {}{ 
  20. border: 1px solid #FFFFFF; 
  21. background-color: #EEEEEE; 
  22. left: 1px; 
  23. top: 1px; 
  24. right: 1px; 
  25. bottom: 1px; 
  26. clip: rect(10px,10px,10px,10px); 
  27. margin: 1px; 
  28. padding: 1px; 
  29. } 
  30.  
  31. --> 
  32. </style> 
  33. </head> 
  34. <script language="javascript"> 
  35. <!-- 
  36. function chkForm() 
  37. { 
  38. var e = document.frm; 
  39. var it,flag,i; 
  40. flag = false; 
  41.  
  42.  
  43. for(i = 1;i<=10;i++) 
  44. { 
  45. var it = eval("e.Question"+i); 
  46. var itLen = eval("e.Question"+i+".length"); 
  47.  
  48. for(var j = 0;j<itLen;j++) 
  49. { 
  50. var itChk = eval("e.Question"+i+"["+j+"].checked"); 
  51.  
  52. if(itChk) 
  53. { 
  54. flag = true; 
  55. break; 
  56. } 
  57.  
  58. if(!itChk && j == itLen-1) 
  59. { 
  60. flag = false; 
  61. break; 
  62. } 
  63. } 
  64.  
  65. if(!flag) 
  66. { 
  67. alert("请选择第"+i+"题答案"); 
  68. return false; 
  69. } 
  70.  
  71. } 
  72. if(!flag) 
  73. { 
  74. alert("请选择第"+i+"题答案"); 
  75. eval("e.Question"+i+".focus()"); 
  76. return false; 
  77. } 
  78. return true; 
  79. } 
  80. --> 
  81. </script> 
  82. <body> 
  83. <div><strong>情景问答</strong></div> 
  84. <form name="frm" action="Test_do.asp" method="post" onsubmit="return(chkForm());"> 
  85. <p><br /> 
  86. 1. 遗忘黯淡中的女主角叫什么名字?<br /> 
  87. <label> 
  88. <input type="radio" name="Question1" value="A" /> 
  89. A.</label> 
  90. Lan<br /> 
  91. <label> 
  92. <input type="radio" name="Question1" value="B" /> 
  93. B.</label> 
  94. Jenny<br /> <label> 
  95. <input type="radio" name="Question1" value="C" /> 
  96. C.</label> Lucy</p> 
  97. <p>2. 音乐往事中酒吧的名字是什么?<br /> 
  98. <label> 
  99. <input type="radio" name="Question2" value="A" /> 
  100. A.</label> 
  101. 遗忘<br /> 
  102. <label> 
  103. <input type="radio" name="Question2" value="B" /> 
  104. B.</label> 
  105. NV<br /> 
  106. <label> 
  107. <input type="radio" name="Question2" value="C" /> 
  108. C.</label> 
  109. 如影随形</p> 
  110. <p>3.遗忘黯淡中的照片墙上有什么照片?<br /> 
  111. <label> 
  112. <input type="radio" name="Question3" value="A" /> 
  113. A.</label> 
  114. 从前的女主人公<br /> 
  115. <label> 
  116. <input type="radio" name="Question3" value="B" /> 
  117. B.</label> 
  118. 海边的风景<br /> 
  119. <label> 
  120. <input type="radio" name="Question3" value="C" /> 
  121. C.</label> 
  122. 酒吧外景</p> 
  123. <p>4. 音乐往事中女主人公喝的酒叫什么名字?<br /> 
  124. <label> 
  125. <input type="radio" name="Question4" value="A" /> 
  126. A.</label> 
  127. 红粉佳人<br /> 
  128. <label> 
  129. <input type="radio" name="Question4" value="B" /> 
  130. B.</label> 
  131. 七色彩虹<br /> 
  132. <label> 
  133. <input type="radio" name="Question4" value="C" /> 
  134. C.</label> 
  135. 蔚蓝海岸</p> 
  136. <p>5.遗忘黯淡中New Vision杂志的封面人物是谁?<br /> 
  137. <label> 
  138. <input type="radio" name="Question5" value="A" /> 
  139. A.</label> 玄斌<br /> 
  140. <label> 
  141. <input type="radio" name="Question5" value="B" /> 
  142. B.</label> Rain<br /> 
  143. <label> 
  144. <input type="radio" name="Question5" value="C" /> 
  145. C.</label> 张东健</p> 
  146. <p>6. 音乐往事中的唱片名字是什么?<br /> 
  147. <label> 
  148. <input type="radio" name="Question6" value="A" /> 
  149. A.</label> 
  150. BEWITCHED<br /> 
  151. <label> 
  152. <input type="radio" name="Question6" value="B" /> 
  153. B.</label> 
  154. WONDERFUL<br /> 
  155. <label> 
  156. <input type="radio" name="Question6" value="C" /> 
  157. C.</label> 
  158. BEAUTIFUL</p> 
  159. <p>7. 音乐往事中的酒吧墙壁上写着什么?<br /> 
  160. <label> 
  161. <input type="radio" name="Question7" value="A" /> 
  162. A.</label> 
  163. Love is beautiful<br /> 
  164. <label><input type="radio" name="Question7" value="B" /> 
  165. B.</label> 
  166. Truth is beautiful<br /> 
  167. <label><input type="radio" name="Question7" value="C" /> 
  168. C.</label> 
  169. Smile is beautiful</p> 
  170. <p>8. 音乐往事中的吧台上摆放着什么?<br /> 
  171. <label><input type="radio" name="Question8" value="A" /> 
  172. A.</label> 
  173. 留声机<br /> 
  174. <label><input type="radio" name="Question8" value="B" /> 
  175. B.</label> 
  176. 收音机<br /> 
  177. <label><input type="radio" name="Question8" value="C" /> 
  178. C.</label> 
  179. 黑胶唱片</p> 
  180. <p>9. 音乐往事中男主人公的喜好是?<br /> 
  181. <label><input type="radio" name="Question9" value="A" /> 
  182. A.</label> 
  183. 电影<br /> 
  184. <label><input type="radio" name="Question9" value="B" /> 
  185. B.</label> 
  186. 摄影<br /> 
  187. <label><input type="radio" name="Question9" value="C" /> 
  188. C.</label> 
  189. 烟草和音乐</p> 
  190. <p>10.凝固精彩中的主人公爱好什么?<br /> 
  191. <label><input type="radio" name="Question10" value="A" /> 
  192. A.</label> 
  193. 旅游<br /> 
  194. <label><input type="radio" name="Question10" value="B" /> 
  195. B.</label> 
  196. 摄影<br /> 
  197. <label><input type="radio" name="Question10" value="C" /> 
  198. C.</label> 
  199. 上网</p> 
  200. <p><br /> 
  201. <input type="submit" name="Submit" value="提交" /> 
  202. <br /> 
  203. </p> 
  204. </form> 
  205. </body> 
  206. </html> 

下面是后台代码Test_do.asp,代码如下:

  1. <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> 
  2. <!-- #include file="conn.asp" --> 
  3. <!-- #include file="function.asp" --> 
  4. <% 
  5. Response.CacheControl = "no-cache"  
  6. Response.Expires = -1 
  7. Response.ExpiresAbsolute=now()-1 
  8.  
  9. if session("username")="" then 
  10. Response.Write("<script>alert('请登陆后在进行操作!');window.location='login.asp?reURL=Nv_Scene_Test.asp';</script>") 
  11. Response.End() 
  12. end if 
  13.  
  14. '定义选项的最高分即总分 
  15. Const TOTALSCORE = 100 
  16. Const ITEMS = 10 
  17. '定义选项分数 
  18. Dim Result(9) 
  19. '第一题得分标准 
  20. Result(0) = "A|10|_|B|0|_|C|0" 
  21.  
  22. '第二题得分标准 
  23. Result(1) = "A|0|_|B|10|_|C|0" 
  24.  
  25. '第三题得分标准 
  26. Result(2) = "A|10|_|B|0|_|C|0" 
  27.  
  28. '第四题得分标准 
  29. Result(3) = "A|0|_|B|0|_|C|10" 
  30.  
  31. '第五题得分标准 
  32. Result(4) = "A|0|_|B|0|_|C|10" 
  33.  
  34. '第六题得分标准 
  35. Result(5) = "A|10|_|B|0|_|C|0" 
  36.  
  37. '第七题得分标准 
  38. Result(6) = "A|0|_|B|10|_|C|0" 
  39.  
  40. '第八题得分标准 
  41. Result(7) = "A|10|_|B|0|_|C|0" 
  42.  
  43. '第九题得分标准 
  44. Result(8) = "A|0|_|B|0|_|C|10" 
  45.  
  46. '第十题得分标准 
  47. Result(9) = "A|0|_|B|10|_|C|0" 
  48.  
  49. ''第十一题得分标准 
  50. 'Result(10) = "A|0|_|B|0|_|C|10" 
  51. ' 
  52. ''第十二题得分标准 
  53. 'Result(11) = "A|0|_|B|10|_|C|0" 
  54. ' 
  55. ''第十三题得分标准 
  56. 'Result(12) = "A|10|_|B|0|_|C|0" 
  57. ' 
  58. ''第十四题得分标准 
  59. 'Result(13) = "A|0|_|B|10|_|C|0" 
  60. ' 
  61. ''第十五题得分标准 
  62. 'Result(14) = "A|0|_|B|0|_|C|10" 
  63.  
  64.  
  65. If UCase(Request.ServerVariables("REQUEST_METHOD")) = "POST" Then 
  66. Call Chk_Post() 
  67. Dim i,total,selItem,summary,strDes,strOut  
  68. total = 0 
  69.  
  70.  
  71. For i = 0 To (ITEMS-1) 
  72. selVal = Trim(Request.Form("Question"&i+1)) 
  73. arrItem = Split(Result(i),"|_|") 
  74.  
  75. For j = 0 To Ubound(arrItem) 
  76.  
  77. If selVal = Split(arrItem(j),"|")(0) Then 
  78.  
  79. totaltotal = total + CInt(Split(arrItem(j),"|")(1)) 
  80. selItemselItem = selItem &"<li>Question"&i+1&":"&selVal&"</li>"&vbCrLf 
  81. End If 
  82. Next 
  83. Next 
  84. summary = FormatPercent(total/TOTALSCORE) 
  85.  
  86. If (total/TOTALSCORE)>=0.6 Then 
  87. strDes = "正确率 "&summary&"<br>您已经顺利通过吧" 
  88. Else 
  89. strDes = "正确率 "&summary&"<br>很遗憾,您正确率还没有达到60%。请再来试试吧!<br><a href=Test.asp'>回在线问答页>></a>" 
  90. End If 
  91.  
  92. strOut = "You have Selected these items below:<br>"&selItem&"<br>Total:"&total&"<br>您的正确率为:"&summary 
  93. strOutstrOut = strOut &"<br>"&strDes 
  94.  
  95. str_sql = "SELECT Count(1) FROM UserInfo WHERE MemberId='"&Session("Id")&"'" 
  96. rowCount = DataConn.execute(str_sql)(0) 
  97.  
  98. If rowCount > 0 Then'如果存在就更新个人信息 
  99. str_sql = "UPDATE UserInfo " 
  100. str_sqlstr_sql = str_sql &" SET Result = '"&FormatNumber(total/TOTALSCORE,2)&"'" 
  101. str_sqlstr_sql = str_sql &" ,ip = '"&Get_UserIp()&"'" 
  102. str_sqlstr_sql = str_sql &" ,AddTime = getdate()" 
  103. str_sqlstr_sql = str_sql &" WHERE MemberID= '"&Session("Id")&"'" 
  104. Else 
  105. str_sql = "INSERT INTO UserInfo( Result,MemberId,MemberName,ip) " 
  106. str_sqlstr_sql = str_sql &" VALUES('"& FormatNumber(total/TOTALSCORE,2)&"','"&Session("Id")&"','"&Session("Username")&"','"&Get_UserIp()&"')" 
  107. End If 
  108. DataConn.execute(str_sql) 
  109. End If 
  110.  
  111.  
  112. %> 
  113. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
  114. <html xmlns="http://www.w3.org/1999/xhtml"> 
  115. <head> 
  116. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
  117. <title>在线问答测试结果</title> 
  118. <style type="text/css"> 
  119. <!-- 
  120. body { 
  121. font-size: 12px; 
  122. color: #0066FF; 
  123. } 
  124. input { 
  125. border: 1px solid #FFFFFF; 
  126. background-color: #EEEEEE; 
  127. left: 1px; 
  128. top: 1px; 
  129. right: 1px; 
  130. bottom: 1px; 
  131. clip: rect(10px,10px,10px,10px); 
  132. margin: 1px; 
  133. padding: 1px; 
  134. } 
  135.  
  136. --> 
  137. </style> 
  138. </head> 
  139.  
  140. <body> 
  141. <%Response.Write(strOut)%> 
  142. </body> 
  143. </html> 

分享:ASP Error对象的技巧
在VBScript中,有一个On Error Resume Next语句,它使脚本解释器忽略运行期错误并继续脚本代码的执行。接着该脚本可以检查Err.Number属性的值,判别是否出现了错误。如果出现错误,返回一个非零值。在ASP 3.0中,也可以使用On Error Goto 0“转回到”缺省的

来源:模板无忧//所属分类:ASP教程/更新时间:2012-06-11
相关ASP教程: