Avatar billede mathiasiversen Nybegynder
20. september 2001 - 17:04 Der er 40 kommentarer og
1 løsning

hvad betyder denne fejlkode:

Et matrixindeks ligger uden for det gyldige område.
det bliver den ved med at sige til mig!

/Mathias
Avatar billede eagleeye Praktikant
20. september 2001 - 17:22 #1
Hvis du har et array med eks.vis 10 i og du forsøger at bruge et index som er størrer end 10, så får du måske den fejl.
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 17:39 #2
soegeord = request.form(\"soegeord\")
Soegefelt = request.form(\"Soegefelt\")
strSQL = \"Select * From Stamfil where \'Soegefelt\' Like \'%\" & soegeord & \"%\'\"
session(\"soegeord\") = strSQL
\' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)

If Not (rs.BOF Or rs.EOF) Then
  Do While Not rs.EOF

%>
<input type=\"checkbox\" name=\"<%=rs(\"ID\")%>\" value=\"on\"><a href=\"findmaalgruppemodtag.asp?kob=<%= rs(\"kob\") %>\" target=\"indholdbund\"><%= rs(\"soegeord\") %></a><br />
<%

rs.movenext
  Loop
else
  response.write \"Ingen virksomheder fundet\"
end if

Conn.Close
Set Conn = Nothing
------------------------
<%
\'virksomhed = session(\"virksomhed\")
\'strSQL = \"Select * From Stamfil where Virksomhedsnavn Like \'%\"&virksomhed&\"%\'\"
strSQL = session(\"virksomhed\")
Set rs = Conn.Execute(strSQL)
response.write rs(\"id\")

dim array
Do until rs.eof or rs.bof
If request.form(rs(\"id\")) = \"on\" Then
strSQL = \"Insert into maalgruppetilmeld (\"

strSQL = strSQL & \"IDmaalgruppe, \"
strSQL = strSQL & \"ID) \"

strSQL = strSQL & \"values( \"

strSQL = strSQL & \" \" & Request.Form(\"IDmaalgruppe\") & \"\"
strSQL = strSQL & \" \" & Request.Form(rs(\"id\")) & \")\"

Conn.Execute(strSQL)   
   
rs.movenext
end if
loop


Conn.Close
Set Conn = Nothing

%>
---------------------
dette er hvad jeg har - to filer! kan du sige om det er derfor!
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 17:45 #3
OK, jeg har set dit svar på det andet spørgsmål!
Avatar billede eagleeye Praktikant
20. september 2001 - 17:49 #4
Jeg ville gætte på det er den her som fejler:

If request.form(rs(\"id\")) = \"on\" then

Det ser måske underligt ud men prøv evt:
If request.form(\"\" & rs(\"id\")) = \"on\" then

Avatar billede mathiasiversen Nybegynder
20. september 2001 - 17:56 #5
ok, nu siger den så: Der er en syntaksfejl, fordi der mangler en operator. i forespørgselsudtrykket \"15 on\".
Avatar billede eagleeye Praktikant
20. september 2001 - 18:27 #6
underligt dine checkbox\'e hedder rs(\"ID\").

Jeg har lavet en side næsten som din og prøvet, og det virker fint med denne if sætninge

If request.form(\"\" & rs(\"id\")) = \"on\" then
  Response.Write \"Hej\"
end if
Avatar billede rasmusibsen Nybegynder
20. september 2001 - 18:41 #7
du mangler et komma:
prøv at erstatte
strSQL = strSQL & \" \" & Request.Form(\"IDmaalgruppe\") & \"\"

det her

med det her

strSQL = strSQL & \" \" & Request.Form(\"IDmaalgruppe\") & \",\"
Avatar billede rasmusibsen Nybegynder
20. september 2001 - 18:42 #8
jeg mener..

prøv at erstatte det her

strSQL = strSQL & \" \" & Request.Form(\"IDmaalgruppe\") & \"\"

med det her

strSQL = strSQL & \" \" & Request.Form(\"IDmaalgruppe\") & \",\"

:)
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 18:44 #9
vil du ikke prøve at skrive at hvad du har skrevet - GOD, jeg er ved at blive skør af det her!
Avatar billede eagleeye Praktikant
20. september 2001 - 18:45 #10
Jeps det rigtig.

Du sætter in i fleterne
strSQL = strSQL & \"IDmaalgruppe, \"
strSQL = strSQL & \"ID) \"

ID sætter du = Request.Form(rs(\"id\"))
Det skal nok bare være  rs(\"id\")

Avatar billede mathiasiversen Nybegynder
20. september 2001 - 18:45 #11
til eagleeye
Avatar billede eagleeye Praktikant
20. september 2001 - 18:46 #12
HVis ID er et tal skal din SQL være

strSQL = \"Insert into maalgruppetilmeld (\"

strSQL = strSQL & \"IDmaalgruppe, \"
strSQL = strSQL & \"ID) \"

strSQL = strSQL & \"values( \"

strSQL = strSQL & \" \" & Request.Form(\"IDmaalgruppe\") & \",\"
strSQL = strSQL & \" \" & rs(\"id\") & \")\"
Avatar billede eagleeye Praktikant
20. september 2001 - 18:49 #13
du skal også havde rs.movenext uden for if-sætnigen. Hvis en checkbox ikke er on kommer du aldrig vidre:

Do until rs.eof or rs.bof
  If request.form(rs(\"id\")) = \"on\" Then

strSQL = \"Insert into maalgruppetilmeld (\"

strSQL = strSQL & \"IDmaalgruppe, \"
strSQL = strSQL & \"ID) \"

strSQL = strSQL & \"values( \"

strSQL = strSQL & \" \" & Request.Form(\"IDmaalgruppe\") & \",\"
strSQL = strSQL & \" \" & rs(\"id\") & \")\"

    Conn.Execute(strSQL)   
   
  end if
  rs.movenext
loop
Conn.Close
Set Conn = Nothing
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 18:52 #14
value=\"<%= rs(\"ID\")%>\" name=\"on\" eller name=\"<%=rs(\"ID\")%>\" value=\"on\" - hvilken en af dem skal det være?
Avatar billede eagleeye Praktikant
20. september 2001 - 18:54 #15
Til det ovenover skal det være;

name=\"<%=rs(\"ID\")%>\" value=\"on\"
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 18:55 #16
okay, nu sker der noget - jeg skal desværre lige spise noget mad, men det lader til at det virker nu:
dim array
Do until rs.eof or rs.bof
  If request.form(\"\" & rs(\"id\")) = \"on\" Then

strSQL = \"Insert into maalgruppetilmeld (\"

strSQL = strSQL & \"IDmaalgruppe, \"
strSQL = strSQL & \"ID) \"

strSQL = strSQL & \"values( \"

strSQL = strSQL & \" \" & Request.Form(\"IDmaalgruppe\") & \",\"
strSQL = strSQL & \" \" & rs(\"id\") & \")\"

    Conn.Execute(strSQL)   
   
  end if
  rs.movenext
loop
Conn.Close
Set Conn = Nothing

du manglede \"\" & rs(\"id\") som du selv fortalte tidligere! Vender lige tilbage efter maden!
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 18:56 #17
ok, kan allerede se at det ikke virker helt!
Avatar billede eagleeye Praktikant
20. september 2001 - 18:57 #18
Do until rs.eof or rs.bof
  If request.form(\"\" & rs(\"id\")) = \"on\" Then
...
------
På den måde her løber du hele din database igennem når du tjekker om en checkbox er valgt, så hvis du har flere 1000 record kommer det til at tage noget tid.
Avatar billede eagleeye Praktikant
20. september 2001 - 18:59 #19
Er ID i maalgruppetilmeld tabellen sat til Autonummer ?
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 19:58 #20
ID i maalgruppetilmeld er ikke at til aotunummering!

Det virker altså kun når jeg skriver: If request.form(\"\" & rs(\"id\")) = \"on\" Then

Avatar billede mathiasiversen Nybegynder
20. september 2001 - 20:00 #21
hvordan kan jag egentligt gemme afkrydsningerne, sådan så man kan se dem næste gang!
Avatar billede eagleeye Praktikant
20. september 2001 - 20:01 #22
ID er et tekst felt ?
Avatar billede eagleeye Praktikant
20. september 2001 - 20:02 #23
undskyld jeg troede ID var et tal felt.
Avatar billede eagleeye Praktikant
20. september 2001 - 20:02 #24
du kan benytte et True/False (Ja/Nej) felt
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 20:04 #25
id er et tekstfelt, men det er ikke primærnøglen, så det er ikke autonummer!
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 20:04 #26
true/false felt i db\'en?
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 20:06 #27
nej nu går det helt galt id er et talfelt!
Avatar billede eagleeye Praktikant
20. september 2001 - 20:09 #28
I tabellen maalgruppetilmeld  er et felt som hedder ID, er det tal eller tekst ?
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 20:09 #29
hvis jeg skal lave et true/false felt i db\'en, så er det ret vigtigt at brugeren selv kan oprette en kolonne i db\'en - ka man det?
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 20:10 #30
TAL - undskyld, det er tal
Avatar billede eagleeye Praktikant
20. september 2001 - 20:13 #31
Hvad ønsker du at gemme?  det er to tal værdier?
Den ene er det ID som er valgt i en checkbox.

strSQL = \"Insert into maalgruppetilmeld (\"

strSQL = strSQL & \"IDmaalgruppe, \"
strSQL = strSQL & \"ID) \"

strSQL = strSQL & \"values( \"

strSQL = strSQL & \" \" & Request.Form(\"IDmaalgruppe\") & \",\"
strSQL = strSQL & \" \" & rs(\"id\") & \")\"
Avatar billede eagleeye Praktikant
20. september 2001 - 20:14 #32
Ja du kan ligge/oprette en extra kolonne ind i en DB.
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 20:17 #33
jeg ønsker at næste gang man får listen frem af checkbokse, så kan man se hvilke der er afkrydset!
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 20:20 #34
jeg kan stadig ikke forstå hvorfor det ikke virker uden man bruger \"\" & rs(\"ID\")
Avatar billede eagleeye Praktikant
20. september 2001 - 20:24 #35
Jeg vil forslå en kolonne i Stamfil som indeholde data omkring checkboxen. Da det er den tabal du laver dine checkboxe ud fra.
Avatar billede eagleeye Praktikant
20. september 2001 - 20:26 #36
request.Form(\"\" & rs(\"ID\"))
Request.Form(5)  så tolker ASP Form som et array hvor den skal hendte 5 element. Så hvis du har \"\" så tror ASP-compileren at der er Form(\"5\") altså elementet men navnet 5.
Jeg har set det før at det giver problemmer når man ikke har \"\" & på.
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 20:27 #37
det går ikke, fordi at man kan melde sig på flere forskellige maalgrupper (ubegrænset antal) dvs. at der skulle være en masse kolonner - og en masse tomme felter i db\'en!
Avatar billede eagleeye Praktikant
20. september 2001 - 20:30 #38
ok. Så skal du havde en anden tabel med den informationen. Du skal havdde gemt ID fra Stamfil og så et felt til checkboxen.
Avatar billede mathiasiversen Nybegynder
20. september 2001 - 20:34 #39
iøvrigt hvordan skriver man til en ja/nej box! er der en special måde eller er det lige en tekststreng?
Avatar billede eagleeye Praktikant
20. september 2001 - 20:52 #40
For et Ja/Nej felt skal du skrive True eller False

Eks: Jeg et Ja/Nej felt i en database som bestemmer om en kamp er hjemmebane eller ej.

if isEmpty(request.Form(\"hjemmebane\")) then
  hjemmebane = false
else
  hjemmebane = true
end if

strSQL = \"INSERT INTO kampe (Dato, Tid, Modstander, Bane, Hjemmebane) \"
  strSQL = strSQL & \"VALUES (#\" & dato & \"#,\"
  strSQL = strSQL & \" #\" & Tid & \"#,\"
  strSQL = strSQL & \" \'\" & modstander & \"\',\"
  strSQL = strSQL & \" \" & bane & \",\"
  strSQL = strSQL & \" \" & hjemmebane & \");\"

Som du kan se indsætte den uden \' omkring. Altså lige som tal indsættes.
Avatar billede eagleeye Praktikant
20. september 2001 - 20:54 #41
Tak for de ekstra points :)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester