📄 testmanage.asp
字号:
<%@LANGUAGE="VBSCRIPT"%>
<!--#include file="Connections/StudentConn.asp" -->
<!--#include file="CheckLogin.asp"-->
<%
' *** Edit Operations: declare variables
MM_editAction = CStr(Request("URL"))
If (Request.QueryString <> "") Then
MM_editAction = MM_editAction & "?" & Request.QueryString
End If
' boolean to abort record edit
MM_abortEdit = false
' query string to execute
MM_editQuery = ""
%>
<%
' *** Redirect if userName exists
MM_flag="MM_insert"
If (CStr(Request(MM_flag)) <> "") Then
MM_dupKeyRedirect="TestModify.asp"
MM_rsKeyConnection=MM_StudentConn_STRING
MM_dupKeyUserNameValue = CStr(Request.Form("SheetName"))
MM_dupKeySQL="SELECT SheetName FROM TestName WHERE SheetName='" & MM_dupKeyUserNameValue & "'"
MM_adodbRecordset="ADODB.Recordset"
set MM_rsKey=Server.CreateObject(MM_adodbRecordset)
MM_rsKey.ActiveConnection=MM_rsKeyConnection
MM_rsKey.Source=MM_dupKeySQL
MM_rsKey.CursorType=0
MM_rsKey.CursorLocation=2
MM_rsKey.LockType=3
MM_rsKey.Open
If Not MM_rsKey.EOF Or Not MM_rsKey.BOF Then
' the userName was found - can not add the requested userName
MM_qsChar = "?"
If (InStr(1,MM_dupKeyRedirect,"?") >= 1) Then MM_qsChar = "&"
MM_dupKeyRedirect = MM_dupKeyRedirect & MM_qsChar & "SheetName=" & MM_dupKeyUserNameValue
Response.Redirect(MM_dupKeyRedirect)
End If
MM_rsKey.Close
End If
%>
<%
' *** Insert Record: set variables
If (CStr(Request("MM_insert")) <> "") Then
MM_editConnection = MM_StudentConn_STRING
MM_editTable = "TestName"
MM_editRedirectUrl = "TestManage.asp"
MM_fieldsStr = "TestName|value|SheetName|value"
MM_columnsStr = "TestName|',none,''|SheetName|',none,''"
' create the MM_fields and MM_columns arrays
MM_fields = Split(MM_fieldsStr, "|")
MM_columns = Split(MM_columnsStr, "|")
' set the form values
For i = LBound(MM_fields) To UBound(MM_fields) Step 2
MM_fields(i+1) = CStr(Request.Form(MM_fields(i)))
Next
' append the query string to the redirect URL
If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then
If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then
MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
Else
MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
End If
End If
End If
%>
<%
' *** Insert Record: construct a sql insert statement and execute it
If (CStr(Request("MM_insert")) <> "") Then
' create the sql insert statement
MM_tableValues = ""
MM_dbValues = ""
For i = LBound(MM_fields) To UBound(MM_fields) Step 2
FormVal = MM_fields(i+1)
MM_typeArray = Split(MM_columns(i+1),",")
Delim = MM_typeArray(0)
If (Delim = "none") Then Delim = ""
AltVal = MM_typeArray(1)
If (AltVal = "none") Then AltVal = ""
EmptyVal = MM_typeArray(2)
If (EmptyVal = "none") Then EmptyVal = ""
If (FormVal = "") Then
FormVal = EmptyVal
Else
If (AltVal <> "") Then
FormVal = AltVal
ElseIf (Delim = "'") Then ' escape quotes
FormVal = "'" & Replace(FormVal,"'","''") & "'"
Else
FormVal = Delim + FormVal + Delim
End If
End If
If (i <> LBound(MM_fields)) Then
MM_tableValues = MM_tableValues & ","
MM_dbValues = MM_dbValues & ","
End if
MM_tableValues = MM_tableValues & MM_columns(i)
MM_dbValues = MM_dbValues & FormVal
Next
MM_editQuery = "insert into " & MM_editTable & " (" & MM_tableValues & ") values (" & MM_dbValues & ")"
If (Not MM_abortEdit) Then
' execute the insert
Set MM_editCmd = Server.CreateObject("ADODB.Command")
MM_editCmd.ActiveConnection = MM_editConnection
MM_editCmd.CommandText = MM_editQuery
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close
' 在DW代码的基础上用SQL语句实现向数据库中添加表
strSubject="(StudentNum TEXT (8) CONSTRAINT MyFieldConstraint PRIMARY KEY,总分 SINGLE,平均分 SINGLE,全级排名 LONG,班级排名 LONG,"
strTemp=request("chkbox")
if instr(strTemp,",")>0 then
strSubject=strSubject & replace(strTemp,","," SINGLE,") & " SINGLE)"
else
strSubject=strSubject & strTemp & " SINGLE)"
end if
strSheetName = Request.Form("SheetName")
MM_CreateTableConnection = MM_StudentConn_STRING
MM_CreateTableQuery = "Create Table " & strSheetName & strSubject
Set MM_CreateTableCmd = Server.CreateObject("ADODB.Command")
MM_CreateTableCmd.ActiveConnection = MM_CreateTableConnection
MM_CreateTableCmd.CommandText = MM_CreateTableQuery
MM_CreateTableCmd.Execute
MM_CreateTableCmd.ActiveConnection.Close
If (MM_editRedirectUrl <> "") Then
Response.Redirect(MM_editRedirectUrl)
End If
End If
End If
%>
<%
set Recordset1 = Server.CreateObject("ADODB.Recordset")
Recordset1.ActiveConnection = MM_StudentConn_STRING
Recordset1.Source = "SELECT * FROM TestName ORDER BY id DESC"
Recordset1.CursorType = 0
Recordset1.CursorLocation = 2
Recordset1.LockType = 3
Recordset1.Open()
Recordset1_numRows = 0
%>
<%
Dim Recordset2
Dim Recordset2_numRows
Set Recordset2 = Server.CreateObject("ADODB.Recordset")
Recordset2.ActiveConnection = MM_StudentConn_STRING
Recordset2.Source = "SELECT * FROM Subject ORDER BY ID ASC"
Recordset2.CursorType = 0
Recordset2.CursorLocation = 2
Recordset2.LockType = 1
Recordset2.Open()
Recordset2_numRows = 0
%>
<%
Dim Repeat1__numRows
Repeat1__numRows = -1
Dim Repeat1__index
Repeat1__index = 0
Recordset1_numRows = Recordset1_numRows + Repeat1__numRows
%>
<%
Dim Repeat2__numRows
Dim Repeat2__index
Repeat2__numRows = -1
Repeat2__index = 0
Recordset2_numRows = Recordset2_numRows + Repeat2__numRows
%>
<%
' *** Go To Record and Move To Record: create strings for maintaining URL and Form parameters
' create the list of parameters which should not be maintained
MM_removeList = "&index="
If (MM_paramName <> "") Then MM_removeList = MM_removeList & "&" & MM_paramName & "="
MM_keepURL="":MM_keepForm="":MM_keepBoth="":MM_keepNone=""
' add the URL parameters to the MM_keepURL string
For Each Item In Request.QueryString
NextItem = "&" & Item & "="
If (InStr(1,MM_removeList,NextItem,1) = 0) Then
MM_keepURL = MM_keepURL & NextItem & Server.URLencode(Request.QueryString(Item))
End If
Next
' add the Form variables to the MM_keepForm string
For Each Item In Request.Form
NextItem = "&" & Item & "="
If (InStr(1,MM_removeList,NextItem,1) = 0) Then
MM_keepForm = MM_keepForm & NextItem & Server.URLencode(Request.Form(Item))
End If
Next
' create the Form + URL string and remove the intial '&' from each of the strings
MM_keepBoth = MM_keepURL & MM_keepForm
if (MM_keepBoth <> "") Then MM_keepBoth = Right(MM_keepBoth, Len(MM_keepBoth) - 1)
if (MM_keepURL <> "") Then MM_keepURL = Right(MM_keepURL, Len(MM_keepURL) - 1)
if (MM_keepForm <> "") Then MM_keepForm = Right(MM_keepForm, Len(MM_keepForm) - 1)
' a utility function used for adding additional parameters to these strings
Function MM_joinChar(firstItem)
If (firstItem <> "") Then
MM_joinChar = "&"
Else
MM_joinChar = ""
End If
End Function
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>考试管理</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2600.0" Name=GENERATOR>
<link href="home.css" rel="stylesheet" type="text/css">
<script language="JavaScript">
function checktest(){
var total=0;
var intmax=document.form1.chkbox.length;
if(intmax>1){
for(var idx=0;idx<intmax;idx++){
if(eval("document.form1.chkbox[" + idx + "].checked")==true){
total+=1;
}
}
if(total==0){
alert("您未选择任何科目!");
document.form1.chkbox[0].focus();
return false;
}
}
else{
if(document.form1.chkbox.checked==false){
alert("您未选择任何科目!");
document.form1.chkbox.focus();
return false;
}
}
if(document.form1.TestName.value=="")
{
alert("考试名称不能为空!");
document.form1.TestName.focus();
return false;
}
if(document.form1.SheetName.value=="")
{
alert("数据库对应表名不能为空!");
document.form1.SheetName.focus();
return false;
}
}
</script>
</HEAD>
<BODY text=#000000 bgColor=#ffffff leftMargin=0 topMargin=0>
<!--#include file="Top.asp"-->
<TABLE cellSpacing=0 cellPadding=0 width=750 align=center border=0>
<TBODY>
<TR>
<TD vAlign=top width=46 background=images/p_left_2.gif></TD>
<TD width="20" align="center" valign="top"> </TD>
<TD><table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="150" height="30"><img src="images/friendsite.GIF" width="19" height="19"><a href="TestManage.asp">考试管理</a></td>
<td width="150" height="30"><img src="images/friendsite.GIF" width="19" height="19"><a href="SubjectManage.asp">考试科目管理</a></td>
</tr>
</table>
<br>
<strong><font size="3"> 考试管理-->主界面</font></strong><br>
<form Name="form1" onsubmit="return checktest()" method="POST" action="<%=MM_editAction%>">
<b><font color="#339999">添加新考试:</font></b>
<table border="1" cellpadding="5" cellspacing="1" bordercolorlight="#CCCCCC" bordercolordark="#FFFFFF" bgcolor="#E1FAFB">
<tr>
<td width="117" height="30" align="right">考试名称: </td>
<td height="30"> <input type="text" Name="TestName"> </td>
<td>例如:2001学年下学期第五次统测 </td>
</tr>
<tr>
<td height="30" align="right">数据库对应的表名:</td>
<td height="30"> <input type="text" Name="SheetName">
</td>
<td height="30"><strong>推荐命名规则:</strong><font color="#FF0000">学年+学期+考试名</font><br>
例如:2001BTC5<br>
其中,“2001”表示2001学年,“B”表示下学期,<br>
TC5表示第五次统测</td>
</tr>
<tr>
<td align="right" valign="middle">考试科目:</td>
<td colspan="2"> <%
response.Write "<table border='0' cellspacing='0' cellpadding='3'><tr>"
While ((Repeat2__numRows <> 0) AND (NOT Recordset2.EOF))
response.Write("<td><input name='chkbox' type='checkbox' value='" & Recordset2.Fields.Item("SubjectName").Value & "' checked>")
response.Write(Recordset2.Fields.Item("SubjectName").Value)
if Repeat2__numRows mod 8 =0 then response.write "</tr><tr>"
Repeat2__index=Repeat2__index+1
Repeat2__numRows=Repeat2__numRows-1
Recordset2.MoveNext()
Wend
response.Write("</tr></table>")
%> </td>
</tr>
<tr align="center">
<td height="30" colspan="3"><input type="hidden" name="MM_insert" value="true">
<input type="submit" Name="Submit" value="添加考试"> </td>
</tr>
</table>
</form>
<font color="#FF0000"><b><font color="#339999">已有的考试:<br>
</font></b></font>
<% If Not Recordset1.EOF Or Not Recordset1.BOF Then %>
<table border="1" cellspacing="0" cellpadding="3" bordercolor="#CC9900">
<tr>
<td height="20" align="center">序号</td>
<td height="20" align="center">考试名称</td>
<td height="20" align="center">数据库对应的表名</td>
<td align="center">已有的考试科目</td>
<td height="20" align="center">操作</td>
</tr>
<%
While ((Repeat1__numRows <> 0) AND (NOT Recordset1.EOF))
%>
<tr>
<td height="20" align="center"><%=(Recordset1.Fields.Item("id").Value)%></td>
<td height="20" align="center"><%=(Recordset1.Fields.Item("TestName").Value)%></td>
<td height="20" align="center"><%=(Recordset1.Fields.Item("SheetName").Value)%></td>
<td>
<%
Dim rsSubject
Dim rsSubject_numRows
Set rsSubject = Server.CreateObject("ADODB.Recordset")
rsSubject.ActiveConnection = MM_StudentConn_STRING
rsSubject.Source = "SELECT * FROM " & Recordset1.Fields.Item("SheetName").Value
rsSubject.CursorType = 0
rsSubject.CursorLocation = 2
rsSubject.LockType = 1
rsSubject.Open()
rsSubject_numRows = 0
response.Write("<table border='0' cellspacing='0' cellpadding='3'><tr>")
For i = 5 to rsSubject.Fields.Count - 1
Response.write "<td>" & rsSubject.Fields(i).Name & "</td>"
if (i+1-5)>0 and ((i+1-5) mod 8 =0) then response.write "</tr><tr>"
next
response.Write("</tr></table>")
rsSubject.Close()
Set rsSubject = Nothing
%>
</td>
<td height="20" align="center"><A HREF="TestModify.asp?<%= MM_keepNone & MM_joinChar(MM_keepNone) & "id=" & Recordset1.Fields.Item("id").Value %>">修改</A> <A HREF="TestDelConfirm.asp?<%= MM_keepNone & MM_joinChar(MM_keepNone) & "id=" & Recordset1.Fields.Item("id").Value %>">删除</A></td>
</tr>
<%
Repeat1__index=Repeat1__index+1
Repeat1__numRows=Repeat1__numRows-1
Recordset1.MoveNext()
Wend
%>
</table>
<br>
<% End If ' end Not Recordset1.EOF Or NOT Recordset1.BOF %>
<% If Recordset1.EOF And Recordset1.BOF Then %>
<p align="center"><br>
<br>
找不到任何考试,请添加考试!<br>
<br>
</p>
<% End If ' end Recordset1.EOF And Recordset1.BOF %>
</TD>
</TR>
</TBODY>
</TABLE>
<!--#include file="CopyRight.asp"-->
</BODY>
</HTML>
<%
Recordset1.Close()
%>
<%
Recordset2.Close()
Set Recordset2 = Nothing
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -