Hejsan!
Vem vet hur jag ska göra i följande fall? Jag har 10 checkboxar vilkas värden hämtas upp från en databas med hjälp av en loop. När man gjort sina val och således kryssat i checkbokarna ska dessa värden hamna i en tabell i databasen som alltså kopplar ihop användare med rätt val. En ny post ska skapas för varje checkbox-val. T.ex. användare 10 gjorde val 5,4 och 6 och användare 12 gjorde val 9 och 10. Fem nya poster ska detta bli.
Var det någon som hängde med? Hoppas det..jag har kört fast...igen...Tacksam för hjälp.
------------------
Sofia
VideMedlem sedan dec. 19998 577 inlägg Har checkboxarna samma namn så kommer dom i en kommaseparerad lista som du lätt kan skapa en array utav, sedan kan du lätt loopa igenom hela harangen...
För att koppla den till användaren så lägger du in användarens id i samma post som valet...
------------------
Budweiser - Slightly contaminated water... probably harmless, but I would recommend boiling before you drink it...
webEye.nu SweQuake.com
VideMedlem sedan dec. 19998 577 inlägg Oj, glömde nästan...
Välkommen hit!!! :)
------------------
Budweiser - Slightly contaminated water... probably harmless, but I would recommend boiling before you drink it...
webEye.nu SweQuake.com
Ok, tack för ditt svar och välkomnande Vide. Du verkar ha varit här ett tag med tanke på dina antal inlägg...
Vad gäller arrayer är jag inte så haj på det...hur jag göra? Så här ser min kod ut, det stämmer att värdena läggs i samma post i databasen med komma emellan.
<%
do until RS.EOF
rs("PA_ID") = Session("PA_ID")
rs("Syfte_ID") = Request.Form("syfte")
rs.movenext
loop %>
<%
rs.AddNew
Conn.close
set rs = nothing
set conn = nothing
%>
Tror du att du kan hjälpa mig lite till, bitte?
------------------
Sofia
jepsOMedlem sedan mars 2001484 inlägg Jag brukar namnge checkboxarna dynamiskt i en loop.
x=1
do until rs.EOF
response.write "input type=""checkbox"" value=""<%=rs("ID")%>"" name=""check<%=x%>"">"
x=x--1
rs.movenext
loop
session("x")=x
Sen kan du enkelt hämta upp värdena från checkboxarna i en for-loop.
for i=1 to session("x")
if trim(request.form("check"+cstr(i)))<>"" then
'INSERT-koden
end if
next
------------------
/ jeps0
VideMedlem sedan dec. 19998 577 inlägg Fast du kan ju naturligtvis inte använda asp-delimiters i ASP-koden... :)
x=1
do until rs.EOF
response.write "input type=""checkbox"" value=""rs("ID")"" name=""check"&x&""">"
x=x--1
rs.movenext
loop
session("x")=x
------------------
Budweiser - Slightly contaminated water... probably harmless, but I would recommend boiling before you drink it...
webEye.nu SweQuake.com
[Redigerat av Vide den 14 maj 2001]
OK boys, tack för er hjälp. Jag fixar det dock inte riktigt. Här är del 1, som funkar:
<table width="400">
<tr><td>Projektanmälan: <%=Session("PA_ID")%> </td></tr>
<tr><td> </td></tr>
<form method="POST" action="form2_projektbakgrund2.asp">
<%
x=1
Do until rs.EOF %>
<tr><td>
<input type="checkbox" value="<% = rs("Syfte_ID") %>" name="check<%=x%>"><% = rs("Namn") %>
<%x= x--1%>
</td></tr>
<%
rs.movenext
loop
Session("PA_ID")= x %>
<%
rs.close
conn.close
set rs = nothing
set conn = nothing
%>
<tr><td> </td></tr>
<tr><td>
<input type=submit value="submit">
</form>
</td></tr></table>
Del 2 (mottagardelen)ser ut som följer, vad är fel i den??
<%
for i=1 to Session("PA_ID")
if trim(request.form("check"+cstr(i)))<>"" then %>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
set rs = server.createObject ("ADODB.Recordset")
Conn.Open "PA"
SQL = "SELECT * FROM PA_Koppling_Syfte"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open SQL, Conn, 1,2
rs("PA_ID") = Session("PA_ID")
rs("syfte_ID") = Request.Form("check")
rs.AddNew
Conn.close
set rs = nothing
set conn = nothing
end if
next
%>
Värdet 11 skrivs in som PA_ID, vilket inte är rätt. Vad göra? Tack på förhand!
------------------
Sofia
Glöm mitt flum, det funkar nu! Tusen tack!
------------------
Sofia