webForumDet fria alternativet

Felaktikt Matrisindex: 'MyArray'

9 svar · 550 visningar · startad av pledge

pledgeMedlem sedan apr. 200415 inlägg
#1

Hej! Jag använder den här koden för att lägga in info till databas. Men jag får:

Feltyp:
Körningsfel i Microsoft VBScript (0x800A0009)
Felaktigt matrisindex: 'MyArray'
/kp_shop/sparaorder.asp, line 75

Koden är...

varde = Request.Cookies(""& Session.SessionID &"")
hamta = Split(varde,"&")
ReDim MyArray(5,Ubound(hamta))
for x = 0 to ubound(hamta)
hamta2 = Split(hamta(x),"=")
IF Len(hamta2(0)) > 0 AND len(hamta2(1)) > 0 then
SQL = "SELECT * FROM produkter WHERE id =" & int(hamta2(0))
Set RecSet = Connect.Execute(SQL)
MyArray(0,x) = hamta2(0)
MyArray(1,x) = hamta2(1)
MyArray(2,x) = RecSet("artnr")
MyArray(3,x) = RecSet("namn")
MyArray(4,x) = RecSet("pris")
MyArray(5,x) = RecSet("farg")

RecSet.Close
Set RecSet = nothing
END IF
next

***LINE 75***insert into...***
SQL = "INSERT INTO sparaorder (namn,adress,postnr1,postnr2,ort,tel1,tel2,epost,ovrigt,artnr,gs,cs,al,ad,pd) VALUES('" & info(0) &"', '" & info(1) &"', '" & info(2) &"', '" & info(3) &"', '" & info(4) &"', '" & info(5) &"', '" & info(6) &"', '" & info(7) &"', '" & info(8) &"', '" & MyArray(2) &"', '"&Request("gs")&"', '"&Request("cs")&"', '"&Request("al")&"', '"&Request("ad")&"', '"&Request("pd")&"')"
Connect.Execute SQL,,128

Connect.Close
Set Connect = Nothing

%>

Hoppas någon kan hjälpa mig!

Tack

nitro2k01Medlem sedan aug. 20039 342 inlägg
#2

Pröva

ReDim MyArray(0 to 6,Ubound(hamta))
LarsGMedlem sedan dec. 200012 464 inlägg
#3

Du använder MyArray(2) men MyArray är ju två-dimensionell.

pledgeMedlem sedan apr. 200415 inlägg
#4

Jag är inte så haj på det här :r , men när jag provar koden "ReDim MyArray(0 to 6,Ubound(hamta))" får jag det här.

Feltyp:
Kompileringsfel i Microsoft VBScript (0x800A03EE)
')' förväntas.
/kp_shop/sparaorder.asp, line 51, column 16
ReDim MyArray(0 to 6,Ubound(hamta))

nitro2k01Medlem sedan aug. 20039 342 inlägg
#5

Då ber jag om ursäkt. Saker är visst annorlunda från Visual Basic...

sawMedlem sedan mars 20011 880 inlägg
#6

Jag är inte så hemma i arrayer heller men detta ser lustigt ut:

>MyArray(0,x) = hamta2(0)
>MyArray(1,x) = hamta2(1)
>MyArray(2,x) = RecSet("artnr")
>MyArray(3,x) = RecSet("namn")
>MyArray(4,x) = RecSet("pris")
>MyArray(5,x) = RecSet("farg")
Vi pratar ju om tal, och därför så bör man väll inte ha ett 'x' med?

Kanske så här:
[kod]
MyArray(0,0) = hamta2(0)
MyArray(1,0) = hamta2(1)
MyArray(2,0) = RecSet("artnr")
MyArray(3,0) = RecSet("namn")
MyArray(4,0) = RecSet("pris")
MyArray(5,0) = RecSet("farg")

om man nu skulle ha följa ursprungskoden, men då pratar vi ju om 2 dim array.
Jag skulle nog tippa på

MyArray(0) = hamta2(0)
MyArray(1) = hamta2(1)
MyArray(2) = RecSet("artnr")
MyArray(3) = RecSet("namn")
MyArray(4) = RecSet("pris")
MyArray(5) = RecSet("farg")
@ndersMedlem sedan juni 200032 969 inlägg
#7

Vi pratar ju om tal, och därför så bör man väll inte ha ett 'x' med?

Variabeln x har ju hela tiden ett heltalsvärde, så det ska inte vara några problem.

pledgeMedlem sedan apr. 200415 inlägg
#8

Vad menas med att MyArray är två-dimensionell?

nitro2k01Medlem sedan aug. 20039 342 inlägg
#9

pledge skrev:

Vad menas med att MyArray är två-dimensionell?

Att den har två index.

dim endimension1(5)
dim endimension2(8)
dim tvadimensioner1(20,2)
dim tvadimensioner2(8,8)
dim tvadimensioner3(4,6)
dim tredimensioner1(8,8,8)
dim tredimensioner2(2,5,3)
' Osv
pledgeMedlem sedan apr. 200415 inlägg
#10

Okej, då förstår jag...

Tack

140 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)