网络考场(11)(转)teditquestion.asp

来源:岁月联盟 编辑:zhuzhu 时间:2003-07-11
<%@ Language=VBScript %>
<%
if Request.ServerVariables("http_method")="POST" then
'提交方式对试题进行操作
    set mrs=server.CreateObject("adodb.recordset")
    mrs.ActiveConnection="dsn=testsys"
    mrs.Source="select * from question where teachid='" & session("teachid") & "' and sub='" & Request.Form("selsub") & "'"
    '打开与当前教师编号和选择课程的名称一致的recordset
    mrs.Open ,,1,3
    if Request.Form("submit")="删除" then
        '执行删除操作
        page=Request.Form("page")
        '指向要删除的记录
        mrs.PageSize=1
        mrs.AbsolutePage=page
        '删除并更新
        mrs.Delete
        mrs.Update
        if Request.Form("page")>1 then
            page=Request.Form("page")-1
        else
            page=1
        end if
    end if
    if Request.Form("submit")="修改" then
        '执行修改操作
        page=Request.Form("page")
        '指向要修改的记录
        mrs.PageSize=1
        mrs.AbsolutePage=page
        '根据提交的内容修改当前记录
        mrs("teachid")=session("teachid")
        mrs("sub")=Request.Form("selsub")
        mrs("question")=Request.Form("question")
        mrs("A")=Request.Form("opta")
        mrs("B")=Request.Form("optb")
        mrs("C")=Request.Form("optc")
        mrs("D")=Request.Form("optd")
        mrs("answer")=Request.Form("answer")
        mrs.Update
        page=Request.Form("page")
    elseif Request.Form("submit")="前一个" then
        '执行查看前一个记录的请求
        page=Request.Form("page")-1
    elseif Request.Form("submit")="后一个" then
        '执行查看后一个记录的请求
        page=Request.Form("page")+1
    elseif Request.Form("submit")="确定" then
        '从选择课程的页面进入该页面时,将页数设定为1
        page=1
    end if
    if not mrs.BOF and not mrs.EOF then
        '如果选择的数据库不为空
        mrs.PageSize=1
        mrs.AbsolutePage=page
        '存放题目总数的变量
        quesnum=mrs.PageCount
        '存放当前题目序号的变量
        currques=page
        '存放题目内容的变量
        question=mrs("question")
        '存放题目选择答案A-D内容的变量
        opta=mrs("A")
        optb=mrs("B")
        optc=mrs("C")
        optd=mrs("D")
        '存放答案的变量
        answer=mrs("answer")
        '以下的字符串变量prebut,nextbut,revisebut,deletebut
        '是根据一定的条件赋值为"true"或"false",用来初始化
        '各个按扭的可用状态
        if page>1 then
        '如果当前页>1,prebut="false"将用于window_onload初始化“前一个”按扭
        '是可用的,以下的用法类似
            prebut="false"
        else
        '否则“前一个”按扭置灰不可用
            prebut="true"
        end if
        if cint(page)<mrs.PageCount then
            '如果当前页数<记录的总页数,则"下一个"按扭可用
            nextbut="false"
        else
            nextbut="true"
        end if
        deletebut="false"
        revisebut="false"
    else
    '如果记录数为0,则全部按扭不可用
        deletebut="true"
        revisebut="true"
        prebut="true"
        nextbut="true"
    end if
    mrs.Close
    set mrs=nothing
end if
%>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<SCRIPT ID=clientEventHandlersJS LANGUAGE=javascript>
<!--
function window_onload() {
<%'以下为根据各个变量初始化表单form1的各个元素%>
<%select case answer%>
<%'根据题目的答案决定哪个radio被选中%>
<%case "A":%>form1.radio1.checked=true
<%case "B":%>form1.radio2.checked=true
<%case "C":%>form1.radio3.checked=true
<%case "D":%>form1.radio4.checked=true
<%end select%>
<%'根据字符串变量prebut,nextbut,revisebut,deletebut决定相应的按扭是否可用%>
form1.prebut.disabled=<%=prebut%>
form1.nextbut.disabled=<%=nextbut%>
form1.revisebut.disabled=<%=revisebut%>
form1.deletebut.disabled=<%=deletebut%>
<%'根据字符串变量opta,optb,optc,optd初始化相应的文本输入框的文本%>
form1.txtopta.value="<%=opta%>"
form1.txtoptb.value="<%=optb%>"
form1.txtoptc.value="<%=optc%>"
form1.txtoptd.value="<%=optd%>"
}
//-->
</SCRIPT>
</HEAD>
<BODY LANGUAGE=javascript onload="return window_onload()">
<FORM action="" method=POST id=form1 name=form1>
<P><STRONG><FONT color=crimson face=幼圆
size=4>修改试题库试题</FONT></STRONG></P>
<P>课程---
<%
Response.Write Request.Form("selsub")
Response.Write "   试题总数:" & quesnum & "/当前试题:" & currques
%> </P>
<P>
<TABLE border=0 cellPadding=1 cellSpacing=1 width=90%>
    
    <TR>
        <TD>题目</TD></TR>
    <TR>
        <TD><TEXTAREA id=TEXTAREA1 name=question style="HEIGHT: 114px; WIDTH: 60%"><%=question%></TEXTAREA></TD></TR>
    <TR>
        <TD>选择答案
    <TR>
        <TD>A.
<INPUT id=txtopta name=opta style="HEIGHT: 21px; WIDTH: 40%">
    <TR>
        <TD>

<P>B.
<INPUT id=txtoptb name=optb style="HEIGHT: 21px; WIDTH: 40%" ></P>
    <TR>
        <TD>C.
<INPUT id=txtoptc name=optc style="HEIGHT: 21px; WIDTH: 40%" >
    <TR>
        <TD>

<P>D.
<INPUT id=txtoptd name=optd style="HEIGHT: 21px; WIDTH: 40%" ></P>
    <TR>
        <TD>

<P>正确答案
<INPUT id=radio1 name=answer type=radio value=A >A
<INPUT id=radio2 name=answer type=radio value=B >B
<INPUT id=radio3 name=answer type=radio value=C >C
<INPUT id=radio4 name=answer type=radio value=D >D
</P></TD></TR></TABLE></P>
<P><INPUT id=deletebut name=submit type=submit value=删除 >
<INPUT id=revisebut name=submit type=submit value=修改 >
<INPUT id=prebut name=submit type=submit value=前一个 >
<INPUT id=nextbut name=submit type=submit value=后一个 ></P>
<%
Response.Write "<input type=hidden name=page value=" & page & ">"
Response.Write "<input type=hidden name=selsub value=" & Request.Form("selsub") & ">"
%>
</FORM>
</BODY>
</HTML>