本机调试ASP,下标越界。提示代码63行错误,请高手相助!

来源:百度知道 编辑:UC知道 时间:2024/06/01 11:41:56
代码如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
'强制要求显式声明脚本中的所有变量
Option Explicit
Response.Buffer = True
Response.Expires=0
Server.ScriptTimeOut = 600 '秒
%>
<!--#include file="../function.asp"-->
<!--#include file="../chkLogin.asp"-->
<!--#include file="../Database/db.inc"-->
<%
dim rs,sql,x,i,sTmp,iTmp
'检查用户做题量是否符合条件
if CInt(Request("hSelExamCount"))<1 then
Response.Write("<script>alert('本试卷题目还没有做完!')</"&"script>")
'Response.Write(Request.Form)
Response.End()
else
'分析用户选择的试题
'For i= 0 to Request.Form.Count -1
'Conn.RollbackTrans()
Conn.BeginTrans()

For Each x In Request.form
'if (Left(x,2)="A_") or ((Left(x,2)="B_")) or ((Left(x,2)=&quo

response.write "A的值是:"&Request.Form("A")&"<br>"
.....(中间省略,分别是B,C,D,E)
response.write "F的值是:"&request.form("F")&"<br>"
你看下是不是哪个值为空

估计问题出在rssql连接串中,里边有很多用到split()(0)的取值方式,游客能是其中的一个或几个split函数的由于输入的是空串,而造成返回值为NULL,而不是一个数组变量,因此,你引用(0)元素就造成下标越界,建议对所有的Request.Form()获取的数据进行有效型检查,不为空再用SPLIT.

建议你将所有request.form读取到的数据先显示一下进行确认,防止因为书写错误造成的空数据