webForumDet fria alternativet

Lägga in värden från 2 fält som tillhör varandra...

ASP

9 svar · 268 visningar · startad av Arre

Medlem sedan juli 200370 inlägg
Frågan#1

den här kan vara lite klurig...
Har gjort en albumscript där man kan lägga till titel, år och spår.
Spåren har jag gjort så att man skriver in hur många spår albumet har, och när man trycker på "continue" knappen så får man upp det antalet fält som man skrev i föregående formulär (för att skriva spårnamn) plus en textarea för varje spår där man kan skriva in lite övrig info om varje spår :)

Såhär ser koden ut, lite städat:

<---- sidan där man väljer antal spår ---->
<form action="addalbums.asp?action=addtracks">
<input type name="antal" size="30" class="form">
<input type="submit" name="Submit" value="continue" onfocus=this.blur()>
</form>
<---- sidan där man sparar spåren ---->
<form method="post" name="addtracks" action="addalbums.asp?action=save">

<%For X = 1 To Request.Form("antal")%>
<input type name="svar<%=X%>" size="30" class="form">
?-------> <textarea name="?"></textarea>
<%Next%>
<input type="submit" value="Create" onfocus=this.blur()>
</form>

Problemet är hur man skriver in värdet från textarea ihop med varje spårfält...

If Request.Querystring("action") = "save" Then

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "driver={Microsoft Access Driver (*.mdb)}; DBQ=" & db2

For Each Name In Request.Form
  If Not Request.Form(Name) = "save" Then
    SQL = "Insert Into tracklisting(trackname, tracknumber) Values('"& Request.Form(Name) &"',"& CInt(Replace(Name,"svar","")) &")"
    Conn.Execute(SQL)		
  End If
Next

Conn.Close
Set Conn = nothing

Response.Redirect "addalbums.asp"
End If

Puh :D
Hoppas att nån förstår vad jag menar...
Tack på förhand!

Medlem sedan juni 200032 967 inlägg
#2

Du är inte så långt ifrån... Det här borde funka:

For Each Name In Request.Form
   If Left(Name, 4) = "save" Then
     SQL = "Insert Into tracklisting(trackname, tracknumber) Values('"& Request.Form(Name) &"',"& CInt(Replace(Name,"svar","")) &")"
     Conn.Execute(SQL) 
   End If
Next

Det vore najsigt om du använde [kod]-taggar till din kod också. ;)

mvh

Medlem sedan juli 200370 inlägg
#3

Tack för svaret Anders! Tänkte se en grej, följer informationen i varje textarea med då om den ska sparas i ett annat fält (details) i databasen? tex såhär:

For Each Name In Request.Form
   If Left(Name, 4) = "save" Then
     SQL = "Insert Into tracklisting(trackname, details, tracknumber) Values('"& Request.Form(Name) &"',"& CInt(Replace(Name,"svar","")) &")"
     Conn.Execute(SQL) 
   End If
Next
Medlem sedan mars 20033 686 inlägg
#4

[kod]-taggarna!

Medlem sedan juli 200370 inlägg
#5

ja Magnus?

Medlem sedan mars 20033 686 inlägg
#6

Använd kod-taggarna när du postar kod.

Medlem sedan juli 200370 inlägg
#7

Ska komma ihåg det till nästa gång :)

Medlem sedan juni 200032 967 inlägg
#8

Tänkte se en grej, följer informationen i varje textarea med då om den ska sparas i ett annat fält (details) i databasen?

Jag förstår inte riktigt vad du menar. :)

Medlem sedan juli 200370 inlägg
#9

Textarean som följer med för varje <%=x%> ska sparas i ett fält i databasen... vilken kod lagrar denna? kan det se ut som nedan:

For Each Name In Request.Form
If Not Request.Form(Name) = "save" Then
     SQL = "Insert Into tracklisting(trackname, details, tracknumber) Values('"& Request.Form(Name) &"','"& Request.Form(Name) &"',"& CInt(Replace(Name,"svar","")) &")"
     Conn.Execute(SQL) 
   End If
Next
Medlem sedan feb. 200112 078 inlägg
#10

Arre skrev:

Ska komma ihåg det till nästa gång :)

:OO

Jag hjälper dig komma ihåg. ;)

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