Jag vill skriva ut bilder i max 7 tabellceller med bilder i den övre raden och checkboxar i den undre. Checkboxarna ska vara ikryssade om de finns i tabellen slideshow. Allt skrivs ut men checkboxarna fylls inte i. Vet nån något smart sätt? input typen checkbox , ska ha en parameter "checked" för att bli ikryssad JAg hade skrivit det något i denna stilen:Dynamiska checkboxar med databas
Tack på förhand!
DATABASSTRUKTUR
tabell jobb - id(int), jobb(varchar) ' 1 jobb kan tillhöra många bilder
tabell referenser id(int), litenbild(varchar), referens(int) ' Många bilder kan tillhöra ett jobb
tabell (kopplingtabell) slideshow id(int), jobbId(int), bildId(int)
KOD
<%
jobbId=Request("jobbId") ' skickas med som querystring
set rs = Server.CreateObject("ADODB.recordset")
rs.Open "SELECT id,litenBild,referens FROM referenser WHERE referens="& jobbId,db
%>
<p />
<table>
<%
bildrad = ""
textrad = ""
kolumn = 0
Do until rs.EOF
set rs1 = Server.CreateObject("ADODB.recordset")
rs1.Open "SELECT * FROM slideshow WHERE jobbId="&jobbId,db
Do until rs1.EOF
if rs1("bildId")=rs(0) then
ch="checked"
else
ch=""
end if
rs1.MoveNext
Loop
bildrad=bildrad&"<td><img src='images/"&rs(1)&"'"></td>"
textrad=textrad&"<td><input type='checkbox' name='bildId' value='"&rs(0)&"' "&ch&"></td>"
kolumn = kolumn + 1
If kolumn = 7 Then
Response.Write ("<tr>" & bildrad & "</tr>"&vbCrlf)
Response.Write ("<tr>" & textrad & "</tr>"&vbCrlf)
bildrad = ""
textrad = ""
kolumn = 0
End If
rs.MoveNext
Loop
If kolumn <>7 Then
Response.Write ("<tr>" & bildrad & "</tr>"&vbCrlf)
Response.Write ("<tr>" & textrad & "</tr>"&vbCrlf)
End If
%>Sv: Dynamiska checkboxar med databas
Sv: Dynamiska checkboxar med databas
<table>
<tr>
<%
Dim db
Dim rs
Dim cmd
Dim ch
Dim jobbId
Dim IdField
Dim NameField
Dim SelectedField
jobbId = CLng(Request.QueryString("jobbId"))
Set db = CreateObject("ADODB.Connection")
db.Open Application("ConnectionString") 'Kan ersättas med din anslutningssträng
Set cmd = CreateObject("ADODB.Command")
Set cmd.ActiveConnection = db
cmd.CommandText = "SELECT id, litenBild, referens, id IN (SELECT bildId" + vbCrLf + _
" FROM slideshow" + vbCrLf + _
" WHERE jobbId = ?) AS Selected" + vbCrLf + _
"FROM referenser" + vbCrLf + _
"WHERE referens = ?"
Set rs = cmd.Execute(,Array(jobbId,jobbId))
Set IdField = rs("id")
Set NameField = rs("litenBild")
Set SelectedField = rs("Selected")
Do until rs.EOF
If SelectedField.Value Then
ch = "checked=""checked"""
Else
ch = ""
End If
Response.Write "<td>" + _
"<img src=""images/" & NameField.Value & """><br />" + _
"<input type=""checkbox"" name=""bildId"" value=""" & IdField & """ " & ch & " />"
"</td>"
If kolumn < 6 Then
kolumn = kolumn + 1
Else
kolumn = 0
Response.Write "</tr>" & vbCrlf & "<tr>"
End if
rs.MoveNext
Loop
rs.Close
db.Close
%>
</tr>
</table>