关于split函授分割recordset的问题

liti66 2008-12-08 06:52:49
表“call”下的字段“detail”下数据格式为“1,2,3,3,4”
想读取detail字段在页面显示1 2 3 3 4
------------------------------------------------
<%set rs=server.CreateObject("adodb.recordset")
sql="select * from call order by id desc"
rs.open sql,conn,1,1%>

<%
str1=rs("detail")
aa= split(str1,",")
for i=0 to Ubound(aa)
response.write(aa(i)&" ")
next
%>
----------------------------------------------
然后运行,报错
Microsoft VBScript compilation (0x800A0410)
Invalid 'for' loop control variable


我该怎么做?
...全文
59 点赞 收藏 12
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
半山闲人 2009-02-25
表“call”下的字段“detail”下数据格式为“1,2,3,3,4”

你这里面的数据的逗号是中文逗号,你分割的时候用的是英文逗号,是不是这里的问题啊?
回复
cqsangs 2009-02-25
楼主是不是 反复使用了同名的循环变量嵌套?? 如
Dim i
for i=0 to 10
'do something...
for i=0 to 1000 '这里,重用了外部For循环的变量i,建议换成 j
'do something
Next
Next
回复
liti66 2008-12-08
没变化........
回复
文盲老顾 2008-12-08
你输出一个 ubound(aa) 看看是多少
回复
liti66 2008-12-08
谢谢楼上的

但是还是出错

错误类型:
Microsoft VBScript compilation (0x800A0410)
Invalid 'for' loop control variable
/selection/main/admin.asp, line 91, column 6
for i = 0 to Ubound(aa)
-----^
回复
文盲老顾 2008-12-08
<%
set rs = server.CreateObject("adodb.recordset")
sql = "select * from call order by id desc"
rs.open sql,conn,1,1

str1 = rs("detail") & ""
aa = split(str1,",")
if isArray(aa) then
for i = 0 to Ubound(aa)
response.write aa(i) & " "
next
else
response.write aa
end if
%>


养成良好的代码书写习惯
回复
liti66 2008-12-08
楼上能不能完整的写一下下??谢谢
回复
同上上
回复
文盲老顾 2008-12-08
看代码应该是 ubound() 返回的 -1,即,不是数组
回复
文盲老顾 2008-12-08
加个数组判断

if isArray(aa) then
for ....
next
end if
回复
liti66 2008-12-08
谢谢楼上的,我一定要用split的话呢?
回复
cjl520xx 2008-12-08
直接用replace不就好了?
<%
str1=rs("detail")
aa= replace(str1,","," ")
response.write(aa)

%>
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2008-12-08 06:52
社区公告
暂无公告