Home > Archive > ASP > April 2007 > problem to post data
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
problem to post data
|
|
| vinodkus@gmail.com 2007-04-18, 3:55 am |
| 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,EXEDES
IGCODE 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
| |
| Daniel Crichton 2007-04-18, 7:55 am |
| vinodkus@gmail.com wrote on 17 Apr 2007 22:15:04 -0700:
> 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,EXEDES
IGCODE 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.
> <%
> 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
|
|
|
|
|