webForumDet fria alternativet

Flera Rader

ASP

2 svar · 145 visningar · startad av rilu

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

Tjena!

Gör en ett arkiv över mina skivor. Först lägger jag in en skivtitel, och bestämmer antalet låtar. Denna sida fungerar utmärkt, sedan generar denna en sida som utgår från hur många låtar jag angivit. Där fyller jag i låtinformationen för skivan, och det är här problemet kommer in. Har en tabell i databasen för skivan och en för låtarna på skivan. Jag vill alltså lägga in flera låtar i flera olika rader i databasen. Min kod ser ut så här:

<%
Dim Connect, conntemp, DSNtemp

Dim arrrecordid, arrposition, arrtracktitle, arrkey, arrbpm 

Set Connect=server.CreateObject("adodb.connection")
DSNtemp="DRIVER={Microsoft Access Driver (*.mdb)}; "
DSNtemp=dsntemp & "DBQ=" & server.mappath("db/record.mdb")
Set RS = Server.CreateObject("ADODB.Recordset")
Connect.Open DSNtemp

arrrecordid=split(Request.Form("id"),",")
arrposition=split(Request.Form("position"),",")
arrtracktitle=split(Request.Form("tracktitle"),",")
arrkey=split(Request.Form("key"),",")
arrbpm=split(Request.Form("bpm"),",")
sql = "SELECT * FROM tracks WHERE 1=2"
RS.Open sql, DSNtemp, 1, 2
for i = 0 to ubound(arrrecordid)
RS.AddNew
RS("recordid") = arrrecordid(i)
RS("position") = arrposition(i)
RS("tracktitle") = arrtracktitle(i)
RS("key") = arrkey(i)
RS("bpm") = arrbpm(i)
RS.Update
next
RS.Close
%>

Får inget fel, men den lägger bara in en av låtarna.

Tacksam för svar...

[Redigerat av rilu den 01 feb 2002]

Medlem sedan dec. 200012 464 inlägg
#2
<%
Dim Connect, conntemp, DSNtemp
Dim arrrecordid, arrposition, arrtracktitle, arrkey, arrbpm 

Set Connect=server.CreateObject("adodb.connection")
DSNtemp="DRIVER={Microsoft Access Driver (*.mdb)}; "
DSNtemp=dsntemp & "DBQ=" & server.mappath("db/record.mdb")
Set RS = Server.CreateObject("ADODB.Recordset")
Connect.Open DSNtemp

id = Request.Form("id")
arrposition=split(Request.Form("position"),",")
arrtracktitle=split(Request.Form("tracktitle"),",")
arrkey=split(Request.Form("key"),",")
arrbpm=split(Request.Form("bpm"),",")
sql = "SELECT * FROM tracks WHERE 1=2"
RS.Open sql, DSNtemp, 1, 2
for i = 0 to ubound(arrposition)
RS.AddNew
RS("recordid") = id
RS("position") = arrposition(i)
RS("tracktitle") = arrtracktitle(i)
RS("key") = arrkey(i)
RS("bpm") = arrbpm(i)
RS.Update
next
RS.Close
%>

Id innehåller väl bara ett värde.

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

Medlem sedan jan. 200059 inlägg
#3

Tack så mycket! Funkar utmärkt.

261 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)