📄 cookietest.jsp
字号:
<%@ page contentType="text/html; charset=GB2312" %>
<%@ page import="java.util.Date" %>
<%
boolean found = false;
//宣告Cookie变量
Cookie Time = null;
//取得Cookie变量数组
Cookie[] cookies = request.getCookies();
//取得Cookie变量数组的长度
int cookielen = cookies.length;
//下面的for循环将从Cookie变量数组中一一取出变量
for (int i = 0; i < cookielen; i++)
{
//将Cookie变量数组中的元素设定给Time
Time = cookies[i];
//呼叫Cookie变量的getName方法, 取得Cookie变量的资料名称,
//并比对名称是否等于StartTime
if (Time.getName().equals("StartTime"))
{
found = true;
break;
}
}
%>
<HTML>
<HEAD>
<TITLE>Cookie的应用 - 网上考试</TITLE>
</HEAD>
<BODY>
<CENTER>
<FONT SIZE = 5 COLOR = blue>Cookie的应用 - 网上考试</FONT>
</CENTER>
<BR>
<HR>
<BR>
<%
//found若等于false表找不到Time变量值, 应显示题目
if(found == false)
{
Date STime = new Date();
Time = new Cookie("StartTime", String.valueOf(STime.getTime()));
response.addCookie(Time);
%>
<!--下面的表单将以Post方法, 将资料传递给CookieTest.jsp档 -->
<FORM action="CookieTest.jsp" method=post name=form>
<!--第一题-->
<P>大熊猫是在哪里发现的?</P>
<P>
<INPUT type="radio" name=rdoQ1 value=1>中国
<INPUT type="radio" name=rdoQ1 value=2>日本
<INPUT type="radio" name=rdoQ1 value=3>美国
<INPUT type="radio" name=rdoQ1 value=4>韩国
</P>
<!--第二题-->
<P>喜马拉雅山有多高?</P>
<P>
<INPUT type="radio" name=rdoQ2 value=1>8900米以上
<INPUT type="radio" name=rdoQ2 value=2>8800米-8900米
<INPUT type="radio" name=rdoQ2 value=3>8700米-8800米
<INPUT type="radio" name=rdoQ2 value=4>8600米-8700米
</P>
<!--第三题-->
<P>2000-20001赛季湖人常规赛名列西部第几名?</P>
<P>
<INPUT type="radio" name=rdoQ3 value=1>1
<INPUT type="radio" name=rdoQ3 value=2>2
<INPUT type="radio" name=rdoQ3 value=3>3
<INPUT type="radio" name=rdoQ3 value=4>4
</P>
<!--第四题-->
<P>2000奥运会在哪里举行?</P>
<P>
<INPUT type="radio" name=rdoQ4 value=1>汉城
<INPUT type="radio" name=rdoQ4 value=2>巴塞罗那
<INPUT type="radio" name=rdoQ4 value=3>亚特兰大
<INPUT type="radio" name=rdoQ4 value=4>悉尼
</P>
<!--第五题-->
<P>2000奥运会中国获得了多少金牌</P>
<P>
<INPUT type="radio" name=rdoQ5 value=1>28
<INPUT type="radio" name=rdoQ5 value=2>27
<INPUT type="radio" name=rdoQ5 value=3>26
<INPUT type="radio" name=rdoQ5 value=4>25
</P>
<INPUT type="submit" value="交卷" name=submit>
</FORM>
<%
}
//若找到Time变量, 表示应进行答案的计算
else
{
int RightAns = 0; //计算答对的题数
int aryAns[] = {1,2,2,4,1}; //建立储存正确答案的数组
//下面的for循环中, 将利用if判断式进行答案的比对
for(int i = 0; i < 5 ; ++i)
{
//建立控制项名称的字串
String conname = "rdoQ" + (i+1);
//判断是否可取得控制项传出的资料, 无法取得将传出null
if(request.getParameter(conname) == null)
{
%>
第<%= i + 1%>题您<FONT COLOR = GREEN>未做答</Font><BR>
<%
}
else
{
%>
第<%= i + 1%>题您答
<%
//取得使用者所做答的答案
int Ans = Integer.parseInt(request.getParameter(conname));
//比对控制项回传值与数组中的正确答案, 相同表答对反之答错
if( Ans == aryAns[i])
{
RightAns = RightAns + 1; //答对题数加 1
%>
<FONT COLOR = GREEN>对</FONT>了<BR>
<%
}
else
{
%>
<FONT COLOR = RED>错</FONT>了<BR>
<%
}
}
}
%>
<H3>
五题中您共答对了
<FONT COLOR = RED>
<!--输出答对的题数-->
<%= RightAns %>
</FONT>
题, 花了
<FONT COLOR = RED>
<!--输出计算所得的答题所花时间-->
<%
out.println(((new Date()).getTime() - Long.parseLong(Time.getValue()))/1000);
%>
</FONT>
秒
</H3>
<%
}
%>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -