数组下越界

qwerqqza123 2012-10-11 09:14:13
Microsoft VBScript 运行时错误 错误 '800a0009'

下标越界: 'Rand(...)'

/admin_code.asp,行 76
出现这个问题,程序的代码为
Title1 = Titleline(Rand(0,ubound(Titleline)))
这个问题这么解决?看到别人是说直接用一个判断如何做?
我和奇怪的是,我本地的2003运行没有出现这个问题,但是在网站上运行就出现了这个问题。
我试了我两个站。
一个可以正常,一个不正常,求解。
...全文
124 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
qwerqqza123 2012-10-14
  • 打赏
  • 举报
回复
先谢谢各位了
qwerqqza123 2012-10-14
  • 打赏
  • 举报
回复
恩好自己试试看下
Dogfish 2012-10-12
  • 打赏
  • 举报
回复
vbscript的rand返回时0-1之间的数字。你要自己处理。

cint(rand()*ubound(ar))
Dogfish 2012-10-12
  • 打赏
  • 举报
回复
如果你的数组没内容,就会出错。
  • 打赏
  • 举报
回复
下标越界: 'Rand(...)'
Title1 = Titleline(Rand(0,ubound(Titleline)))

这种提示已经很确定了,就是对应你这个二维数组Rand(0,ubound(Titleline))的元素不存在。

改成
Title1 = Titleline(Rand(Lbound(Titleline),ubound(Titleline)))
看看。

其实我觉得奇怪的是,你这个Rand看名字和在这一行中的位置,应该是一个函数,返回参数1到参数2之间的一个随机数。这样的话,按说不应该出现这个提示,因为Rand不应该是一个数组。而现在它好像是一个数组。

我不知道你具体的编写背景和代码,可能是名称起得让人容易误会。
qwerqqza123 2012-10-11
  • 打赏
  • 举报
回复
但是我看到别人只要一句判断就可以解决,关键是我在一个站上面运行可以,但是另外的却不可以,不知道为什么
孟子E章 2012-10-11
  • 打赏
  • 举报
回复
你这个ubound(Titleline)太大或者太小了吧。

代码不完整,无法说明
qwerqqza123 2012-10-11
  • 打赏
  • 举报
回复
为什么没有人回答啊。

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧