⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 scoreorder1.asp

📁 一篇不错的好论文
💻 ASP
字号:
<%@LANGUAGE="VBSCRIPT"%>
<!--#include file="Connections/StudentConn.asp" -->
<!--#include file="CheckLogin.asp"-->
<%
Dim Recordset1__MMColParam
Dim strSheetName, strStudentNum, strGrade, strClass
strSheetName = Request("SheetName")
strGrade=Request("Grade")
strClass=Request("ClassSelect")
strOrderField=Request("OrderField")
Session("txtSheetName")=strSheetName
Session("txtGrade")=strGrade
Session("txtClass")=strClass
  If len(Year(Now()))<=2 Then
    NewYear="20" & Year(Now())
  Else
    NewYear=Year(Now())
  End If
  If len(Month(Now()))<=1 Then
    NewMonth="0" & Month(Now())
  Else
    NewMonth=Month(Now())
  End If
  if NewMonth<9 then
    strStudentNum=NewYear-strGrade-1
  else
    strStudentNum=NewYear-strGrade
  end if

  Recordset1__MMColParam =strStudentNum

set Recordset1 = Server.CreateObject("ADODB.Recordset")
Recordset1.ActiveConnection = MM_StudentConn_STRING
Recordset1.Source = "SELECT *  FROM " & strSheetName & " WHERE StudentNum like '" & left(Recordset1__MMColParam,4) & "%'  ORDER BY 总分 DESC"
Recordset1.CursorType = 0
Recordset1.CursorLocation = 2
Recordset1.LockType = 3
Recordset1.Open()
Recordset1_numRows = 0

'计算总分
Recordset1.MoveFirst()
While NOT Recordset1.EOF
	intTotal=0
    for i= 5 to Recordset1.Fields.Count-1
		intTotal=intTotal+Recordset1.Fields.Item(i).Value
	next
	Recordset1.Fields.Item("总分") = intTotal
	Recordset1.Fields.Item("平均分") = Round(intTotal/(Recordset1.Fields.Count-5),2)
	Recordset1.Update
	Recordset1.MoveNext()
Wend

'进行级排名
OrderNum = 1
i = 1
Recordset1.MoveFirst()
tmpTotal=Recordset1.Fields.Item("总分")
Recordset1.Fields.Item("全级排名")=OrderNum
Recordset1.Update
Recordset1.MoveNext()
While NOT Recordset1.EOF
  i = i + 1
  if Recordset1.Fields.Item("总分") = tmpTotal then
	Recordset1.Fields.Item("全级排名")= OrderNum
  else
	Recordset1.Fields.Item("全级排名")= i
  end if
  tmpTotal=Recordset1.Fields.Item("总分")
  Recordset1.Update
  OrderNum = Recordset1.Fields.Item("全级排名")

  Recordset1.MoveNext()
  
Wend
Recordset1.Close()


'进行班排名

for intClass = 1 to 12  
  if Len(CStr(intClass))=1 then
    intClass="0" & CStr(intClass)
  end if
  set Recordset1 = Server.CreateObject("ADODB.Recordset")
  Recordset1.ActiveConnection = MM_StudentConn_STRING
  Recordset1.Source = "SELECT *  FROM " & strSheetName & " WHERE StudentNum like '" & left(strStudentNum,4) & intClass & "%'  ORDER BY 总分 DESC"
  Recordset1.CursorType = 0
  Recordset1.CursorLocation = 2
  Recordset1.LockType = 3
  Recordset1.Open()
  Recordset1_numRows = 0
  
if Not Recordset1.EOF Or Not Recordset1.BOF Then
  OrderNum = 1
  i = 1
  Recordset1.MoveFirst()
  tmpTotal=Recordset1.Fields.Item("总分")
  Recordset1.Fields.Item("班级排名")=OrderNum
  Recordset1.Update
  Recordset1.MoveNext()
  While NOT Recordset1.EOF
    i = i + 1
    if Recordset1.Fields.Item("总分") = tmpTotal then
	  Recordset1.Fields.Item("班级排名")= OrderNum
    else
      Recordset1.Fields.Item("班级排名")= i
    end if
    tmpTotal=Recordset1.Fields.Item("总分")
    Recordset1.Update
    OrderNum = Recordset1.Fields.Item("班级排名")
  
    Recordset1.MoveNext()
  
  Wend
end if
  Recordset1.Close()
next

Response.Redirect("ScoreQuery3.asp?sheetName=" & strSheetName & "&grade=" & strGrade & "&classselect=" & strClass &"&OrderField=" & strOrderField)
%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -