Sub Register()
If check_Pass() Then '如果庫中已有的話,則給出提示資訊
Show_Warning()
Else '否則添加進去
Add_Comment()
End If
End Sub
Sub Show_Warning()'給出提示資訊的函數
Response.Write("<p>")
Response.Write("<center>很抱歉<p>")
Response.Write("庫中已有此試題編號或試題內容,請返回前頁修改!")
Response.Write("</center>")
Response.Write("Made by hekai himself in 2001")
End Sub
</script>
此為"檢索試題"的程式碼:
<script Language="VBScript" RunAt="Server">
Function adjust_sql(adj_str)
'目的---轉換查詢字串中的特殊字元至SQL指令
Dim final_str, i 'WRITE BY HEKAI2001
adj_str = Trim(adj_str)
final_str = "" '每次從傳進來的字串中取出一個字元,並判斷是否為下述三個字元之一: DOS的Filter符號"|"、左中括弧"["以及單引號"'"
If Len(adj_str) > 0 Then
For i = 1 To Len(adj_str)
Select Case Mid(adj_str, i, 1)
Case "[": final_str = final_str & "[[]"
Case "|": final_str = final_str & "[{-}]"
Case "'": final_str = final_str & "[&-()"
Case Else: '以上皆非則什麼事都不做!
final_str = final_str & Mid(adj_str, i, 1)
End Select
Next
End If
adjust_sql = final_str
End Function
Sub Output_shiti()
Dim kmxxmc,xzsj,stbh,zhang,jie,tmlx,nycd,jxyq,lrz,stnr,cond_count, Picstr
Dim SQLstr,mf,zhangfw,jiefw,stbhfw,nycdfw,lr_datefw,lr_date
'記錄指定條件的欄位總數
cond_count = 10; mf = "%"
Picstr="<img src='http://edu.cnzz.cn/images/hk.gif'>"
'取得表單欄位內容
kmxxmc = Request.Form("kmxxmc")
stbh = Request.Form("stbh")
┋ ┋ ┋
stnr = Request.Form("stnr")
'調整SQL指令中的特定字元
kmxxmc = adjust_sql(kmxxmc)
stbh = adjust_sql(stbh)
┋ ┋ ┋
stnr = adjust_sql(stnr)
If Len(xzsj) = 0 Then cond_count = cond_count - 1
If Len(stbh) = 0 Then cond_count = cond_count - 1
┋ ┋ ┋
If Len(stnr) = 0 Then cond_count = cond_count - 1
SQLstr = "select * from " & kmxxmc & " where "
If Len(stbh) > 0 Then
SQLstr = SQLstr & " stbh " & stbhfw & "'" & stbh & "'"
If cond_count > 1 Then
SQLstr = SQLstr & " and "
cond_count = cond_count - 1
End If
End If
┋ ┋ ┋
If Len(stnr) > 0 Then
SQLstr = SQLstr & " tmnr like " & "'" & mf & stnr & mf & "'"
If cond_count > 1 Then
SQLstr = SQLstr & " and "
cond_count = cond_count - 1
End If
End If
SQLstr = SQLstr & " order by lr_date DESC "
set adocon=Server.CreateObject("ADODB.Connection")
adocon.Open "zxtest"
set sa1 = adocon.Execute(SQLstr)
If sa1.EOF Then
Response.Write "<br><center><h1>"
Response.Write "Sorry!<p>"
Response.Write "沒有找到試題,"
esponse.Write "請重試一次!</center><p>"
Response.Write "<hr></h1>"
Else
i = 0
Response.Write "<h2>"
Response.Write "合格試題相關內容如下:"
Response.Write "</h2>"
While Not sa1.EOF
i = i + 1
Response.Write "第 <i>" & i & "</i>題 題編號:<i>" & sa1("stbh") & "</i><br>"
Response.Write "試題內容:" & sa1("tmnr") & "<br>"
┋ ┋ ┋
Response.Write "答案A:" & sa1("bxda_a") & "<br>"
sa1.MoveNext
WEnd
adocon.Close
End If
End Sub
</script>
<% '"檢索試卷"的查詢方式原始碼
mf="%"
select case request("findfs")
case "sjbh"
sqlstr="SELECT * FROM tbsjxx WHERE " & " sjbh LIKE"
sqlstr=sqlstr & "'" & mf & request("findfsz") & mf & "'order by ksrq DESC"
┋ ┋ ┋
case "lr_date"
sqlstr="SELECT * FROM tbsjxx WHERE " & " lr_date LIKE"
sqlstr=sqlstr & "'" & mf & request("findfsz") & mf & "'order by ksrq DESC"
case else
sqlstr="SELECT * FROM tbsjxx order by ksrq DESC"
end select %>
下面是考試的時間自動控製程序(便於示範只設了60秒鐘,實際應用應以系統調出試卷的考試時間為準!):
<SCRIPT language=JavaScript>
<!-- Write by HEKAI for TestTimeContorl
var timerID = null;var timerRunning = false
var stardate = new Date();var startime = gettotalsecond(stardate)
var totaltime = 60; var lasttime;var facetime
function Stepclock(){
// hk made by himself
if(timerRunning)
clearTimeout(timerID)
timerRunning = false }
function startclock(){
Stepclock();showtime() }
function gettotalsecond(getdate){
var hours = getdate.getHours()
var minutes = getdate.getMinutes();var seconds = getdate.getSeconds()
var gettotalsecond = seconds + minutes * 60 + hours * 3600
return(gettotalsecond) }
function showtime(){
var now = new Date();var timeValue = gettotalsecond(now)
document.clock.face.value = timeValue - startime
facetime = document.clock.face.value;lasttime = totaltime - facetime
document.clock.sytime.value = lasttime
timerID = setTimeout("showtime()",1000)
timerRunning = true
if (lasttime == 20){
for(i=1;i<=3;i++){
alert('考試時間只剩下最後20秒!')}}
if (lasttime == 0){
for(i=1;i<=5;i++){
alert('時間完畢!請迅速交卷!!')}}
if (lasttime == -10){
for(i=1;i<=10;i++){
alert('考試時間超過10秒,關閉此視窗!')}}
}//-->
</SCRIPT>