Home All Groups Group Topic Archive Search About
Author
18 Apr 2007 5:15 AM
vinodkus
HV TAKEN A DRON DOWN AND FETCH RECORD OF THREE COLUMN FROM A TABLE,
AND I HAVE TAKEN A SUBMIT BUTTON.JUST I WANT TO SHOW ALL RECORD IN
NEXT PAGE JUST SPLIT THEM AND STORIN IN AN ARRAY BUT IT GIVES AN
ERROR

IT HAS TWO PAGES

FIRST PAGE check1.asp

<!--#include file="../../INCLUDES/SSPHARMASOFTCON.INC"-->
<html>

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<title>New Page 1</title>
</head>
<body>
<form name = form1 action = "check2.asp" method = post>
<select name = "drp1">
<%
set rs = Con.Execute("select
EXECODE,EXEFNAME,EXELNAME,EXEAREA,EXEDESIGCODE from SS_EXEDETAIL where
EXESTATUS='Y' AND EXECODE<>'SS-001' AND EXEDESIGCODE<>'MR' order by
EXECODE")
    if not rs.eof then
        while not rs.eof
%>
<option value = <%=rs(0)%>;<%=rs(1)%>;<%=rs(2)%>><%=rs(0)%>:<
%=rs(1)%>:<%=rs(2)%></option>
<%
        rs.movenext
        wend
    end if
%>
<input type = submit value = submit name = submit>
</body>
</html>

SECOND PAGE check2.asp

<html>

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<title>New Page 1</title>
</head>

<body>
<%
drp = Request.Form("drp1")
'Response.write(drp)
x = split(drp,";")
response.write(x(0))
response.write(x(1))
response.write(x(2))

%>

</body>

</html>

Error Type:
Microsoft VBScript runtime (0x800A0009)
Subscript out of range: '[number: 1]'
/sspharmasoft/softadmin/MISREPORTS/check2.asp, line 16

Author
18 Apr 2007 11:36 AM
Daniel Crichton
vinod***@gmail.com wrote  on 17 Apr 2007 22:15:04 -0700:

Show quoteHide quote
>  HV TAKEN A DRON DOWN AND FETCH RECORD OF THREE COLUMN FROM A TABLE,
> AND I HAVE TAKEN A SUBMIT BUTTON.JUST I WANT TO SHOW ALL RECORD IN
> NEXT PAGE JUST SPLIT THEM AND STORIN IN AN ARRAY BUT IT GIVES AN
> ERROR
>
> IT HAS TWO PAGES
>
> FIRST PAGE check1.asp
>
> <!--#include file="../../INCLUDES/SSPHARMASOFTCON.INC"-->
> <html>
>
> <head>
> <meta name="GENERATOR" content="Microsoft FrontPage 5.0">
> <meta name="ProgId" content="FrontPage.Editor.Document">
> <meta http-equiv="Content-Type" content="text/html;
> charset=windows-1252">
> <title>New Page 1</title>
> </head>
> <body>
> <form name = form1 action = "check2.asp" method = post>
> <select name = "drp1">
> <%
> set rs = Con.Execute("select
> EXECODE,EXEFNAME,EXELNAME,EXEAREA,EXEDESIGCODE from SS_EXEDETAIL where
> EXESTATUS='Y' AND EXECODE<>'SS-001' AND EXEDESIGCODE<>'MR' order by
> EXECODE")
>  if not rs.eof then
>   while not rs.eof
> %>
> <option value = <%=rs(0)%>;<%=rs(1)%>;<%=rs(2)%>><%=rs(0)%>:<
> %=rs(1)%>:<%=rs(2)%></option>

Where are the quotes around the value? Try this:

<option value = "<%=Server.HTMLEncode(rs(0) & ";" & rs(1) & ";" &
rs(2))%>"><%=Server.HTMLEncode(rs(0) & ":" & rs(1) & ":" & rs(2))%></option>

This way any spaces in the data don't split up the value, and any HTML
characters are encoded to prevent breaking the HTML.

Show quoteHide quote
> <%
>   rs.movenext
>   wend
>  end if
> %>
> <input type = submit value = submit name = submit>
> </body>
> </html>
>
> SECOND PAGE check2.asp
>
> <html>
>
> <head>
> <meta name="GENERATOR" content="Microsoft FrontPage 5.0">
> <meta name="ProgId" content="FrontPage.Editor.Document">
> <meta http-equiv="Content-Type" content="text/html;
> charset=windows-1252">
> <title>New Page 1</title>
> </head>
>
> <body>
> <%
> drp = Request.Form("drp1")
> 'Response.write(drp)
> x = split(drp,";")

At this point you should be checking that the array is the correct size
before trying to print out the data, eg.

If IsArray(x) Then
    If UBound(x) = 2 Then
        response.write(x(0))
        response.write(x(1))
        response.write(x(2))
    End If
End If

> %>
>
> </body>
>
> </html>
>
> Error Type:
> Microsoft VBScript runtime (0x800A0009)
> Subscript out of range: '[number: 1]'
> /sspharmasoft/softadmin/MISREPORTS/check2.asp, line 16

This error suggest that there are no semicolons in the drp1 value, probably
because there is a space in the first value which due to you not putting
quotes around the value in the OPTION element resulted in only the first
part of the data being passed back to check2.asp.

Dan

Bookmark and Share