Hvis et array index er out off range, betyder det at man er gået for langt, men den er du sikkert med på. Stadig ville det være lækkert med mere kode, for det er meget svært at sætte sig ind i hvad der sker før den linie det går galt i.
Det ser ud som om sp_id er en VB_Script var, og at den dens værdi er højere end request.form() arrayet er...
Hvis du har en input med navnet sp_id, skal der lige "" udenom, når du spørger efter den med request.
Dette bliver udskrevet hvor formfeltets name = rs("sp_id") <input type="checkbox" name="1" value="true"> <font size="1" face="Arial, Helvetica, sans-serif">sygefravær</font><br>
det ser ud som om formen poster 'on' hvis man tjekker boksen og ikke skriver noget hvis man lader den stå tom. Men det er uden dit eksempel det er bare hvis value ikke er sat.
Kan du ikke nævne helt præcist hvad dit formål er? Vil du lave postback, lade de tjekbokse der var sat, være sat når siden loades igen?
rs_forkortelser, er det et form navn, eller et udtræk fra en database?
det ser ud som om du hele tiden requester den samme værdi med "sp_id", der enten er "true" eller "on". Du er nødt til at hive den enkelte værdi fra tjekboksen, altså tjekke på navnet. Hvorfor vil du også sætte værdien til "true". Den er "on", hvis den er valgt, er dette ikke godt nok?
Tak for din tålmodighed, jeg er ikke den stærke i ASP, men lærer stadigt.
Den skal ikke sættes i databasen, det skal kun benyttes til at sortere med, men så langt er jeg slet ikke kommet. Jeg skal bare huske tjekboksen der var sat, og sætte den igen når siden loades.
Der er forkortelserne som udskrives ud for checkbokse. Man kan vælge nogle fra og så vil de ikke fremkomme på listen af users. Men så langt er jeg slet ikke kommet endnu.
Her har du hele mit dokument: <%@LANGUAGE="VBSCRIPT"%> <!--#include file="../../Connections/test.asp" -->
<% ' *** Go To Record and Move To Record: create strings for maintaining URL and Form parameters
Dim MM_keepNone Dim MM_keepURL Dim MM_keepForm Dim MM_keepBoth
Dim MM_removeList Dim MM_item Dim MM_nextItem
' create the list of parameters which should not be maintained MM_removeList = "&index=" If (MM_paramName <> "") Then MM_removeList = MM_removeList & "&" & MM_paramName & "=" End If
' add the URL parameters to the MM_keepURL string For Each MM_item In Request.QueryString MM_nextItem = "&" & MM_item & "=" If (InStr(1,MM_removeList,MM_nextItem,1) = 0) Then MM_keepURL = MM_keepURL & MM_nextItem & Server.URLencode(Request.QueryString(MM_item)) End If Next
' add the Form variables to the MM_keepForm string For Each MM_item In Request.Form MM_nextItem = "&" & MM_item & "=" If (InStr(1,MM_removeList,MM_nextItem,1) = 0) Then MM_keepForm = MM_keepForm & MM_nextItem & Server.URLencode(Request.Form(MM_item)) End If Next
' create the Form + URL string and remove the intial '&' from each of the strings MM_keepBoth = MM_keepURL & MM_keepForm If (MM_keepBoth <> "") Then MM_keepBoth = Right(MM_keepBoth, Len(MM_keepBoth) - 1) End If If (MM_keepURL <> "") Then MM_keepURL = Right(MM_keepURL, Len(MM_keepURL) - 1) End If If (MM_keepForm <> "") Then MM_keepForm = Right(MM_keepForm, Len(MM_keepForm) - 1) End If
' a utility function used for adding additional parameters to these strings Function MM_joinChar(firstItem) If (firstItem <> "") Then MM_joinChar = "&" Else MM_joinChar = "" End If End Function %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>arbejdsdokument</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="style.css" rel="stylesheet" type="text/css"> </head>
Jeg skrev tidligere: det ser ud som om du hele tiden requester den samme værdi med "sp_id", der enten er "true" eller "on". Du er nødt til at hive den enkelte værdi fra tjekboksen, altså tjekke på navnet. Fik du tjekket det? Tror jeg ikke:)
Jeg kan se på din kode at du kører databaseset igennem, og danner dine rækker, men du glemmer at tage højde for om rækkerne skal dannes pga. postback, eller på baggrund af data fra din base. dvs. siden vises første gang eller lign.
Ved hver sp_id, må du forsøge at lave et request(sp_id), hvor du skal huske at værdien skal være en streng. Hvis værdien findes, er det den værdi du skal benytte til at generere dine rækker ikke sandt?
kan se du har været tæt på: 'sp_id = reequest.form(rs_forkortelser.Fields.Item("sp_id").Value)
Du skal bare tjekke om den har en værdi. Desuden er der et e for meget:) reequest
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.