webForumDet fria alternativet

Felaktigt matrisindex: 'i'

ASP

3 svar · 352 visningar · startad av andreas_lindh

Medlem sedan jan. 20011 140 inlägg
Frågan#1

Kan någon se vad som är fel?

<% match_id=split(request.form("match_id"),",")
lag_id=split(Request.form("lag_id"),",")
spelar_id=split(Request.Form("id"),",")
spelar=split(Request.Form("spelar"),",")

for i = 1 to request.form("spelar").count
sql = "Insert into c_protokoll (match_id, lag_id,spelar_id,spelar)"
sql = sql & " Values ('" & trim(match_id(i)) & "', '" & trim(lag_id(i)) & "', '" & trim(spelar_id(i)) & "', '" & trim(spelar(i)) & "')"
next
oConn.Execute(sql)
oconn.close
%>

Får detta felmeddelandet:
Feltyp:
Körningsfel i Microsoft VBScript (0x800A0009)
Felaktigt matrisindex: 'i'
/tikcup/edit_schema.asp, line 437

[Redigerat av andreas_lindh den 07 feb 2002]

Medlem sedan dec. 200012 464 inlägg
#2

arrayindex startar på 0

sql = "Insert into c_protokoll (match_id, lag_id,spelar_id,spelar)"
sql = sql & " Values ('" & trim(match_id(i-1)) & "', '" & trim(lag_id(i-1)) & "', '" & trim(spelar_id(i-1)) & "', '" & trim(spelar(i-1)) & "')"

------------------
essentitia preter non sans multiplicandum

Medlem sedan jan. 20011 140 inlägg
#3

Jag ändrade till

<% 
match_id=split(request.form("match_id"),",")
lag_id=split(Request.form("lag_id"),",")
spelar_id=split(Request.Form("id"),",")
spelar=split(Request.Form("spelar"),",")

for i = 0 to request.form("spelar").count
sql = "Insert into c_protokoll (match_id, lag_id,spelar_id,spelar)"
sql = sql & " Values (" & trim(match_id(i)) & ", " & trim(lag_id(i)) & ", " & trim(spelar_id(i)) & ", " & trim(spelar(i)) & ")"
next
oConn.Execute(sql)
%>

Det borde väl vara samma men det fungerar inte.
Den första fungerar inte heller som den ska. Den lägger bar till en post fast det ska vara flera.

Medlem sedan dec. 200012 464 inlägg
#4

Nej, det är inte samma sak.

Anledningen till att du bara får in en post är att du bara gör execute en gång.

oConn.Execute sql

Flytta in den i for-loopen.

------------------
essentitia preter non sans multiplicandum

263 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
132 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)