14. juni 2002 - 19:43Der er
9 kommentarer og 1 løsning
Nyeste afstemning
Jeg har en afstemning som kører på en Access-Database... hvert spørgsmål har sin ID i databasen, som f.eks. 1, og når jeg vil have vist denne afstemning, inkluderer jeg <% Stem(1) %>, men... jeg gider ikke hver gang jeg har tilføjet et NYT spørgsmål, at gå ind og rette i koden - så jeg tænkte: Hvis jeg nu skriver:
<% Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("/mode/db/community.mdb") Conn.Open DSN %> <% strNyAfstemningSQL = "SELECT TOP 1 * FROM afstemning ORDER BY id DESC" Set rsNyAfstemning = Conn.Execute(strNyAfstemningSQL)
Do
NA = rsNyAfstemning("id")
rsNyAfstemning.MoveNext Loop while not rsNyAfstemning.EOF
rsNyAfstemning.Close Set rsNyAfstemning = Nothing %>
, i toppen, burde jeg så ikke kunne skrive:
<% Stem( & NA &) %>
MEN nej, det kunne jeg ikke - så HVAD gør jeg så, for at få hevet den nyeste afstemning ud af min database?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Du behøver eller bør ikke lave et loop da du vil havde den nyeste id ud. Hvis du vil gøre noget bør det måske være at tjekke du får en ID tilbage..:
if rsNyAfstemning.EOF then 'danm ikke noget at stemme på NA = "" else NA = rsNyAfstemning("id") end if rsNyAfstemning.Close Set rsNyAfstemning = Nothing
<% Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath("/mode/db/community.mdb") Conn.Open DSN %> <% strNyAfstemningSQL = "SELECT TOP 1 * FROM afstemning ORDER BY id DESC" Set rsNyAfstemning = Conn.Execute(strNyAfstemningSQL)
if rsNyAfstemning.EOF then 'danm ikke noget at stemme på NA = "" else NA = rsNyAfstemning("id") end if rsNyAfstemning.Close Set rsNyAfstemning = Nothing %> Det her i toppen...
Og der hvor jeg vil have afstemningen: <% if NA <> "" then Stem(NA) end if %>
----------Stem.inc---------- <% ' -------------------------------------------------------------- ' Function Stem(id) - id = id i stem.mdb ' -------------------------------------------------------------- function stem(id)
Sql = "Select * from T_Vote where Id = " & id Set Record = RsVote.Execute(Sql) If Not Record.EOF then If (Len(Request.Cookies("stem")(CSTR(id)))) then Dim Valg(5) valg(1) = Record("valg1") valg(2) = Record("valg2") valg(3) = Record("valg3") valg(4) = Record("valg4") valg(5) = Record("valg5")
response.write font & Record("Beskrivelse") & "<br><br>"
Sql = "Select count(*) as Found from T_VoteResult where VoteId = " & id Set Record = RsVote.Execute(Sql) Ialt = Record("found")
Response.Write "<div align='left'><table border='0'><tr>" For i = 1 to 5 If valg(i) <> "" then Sql = "Select count(*) as Found from T_VoteResult where VoteId = " & id & " and vote = '" & Valg(i) & "'" Set Record = RsVote.Execute(Sql) Procent = 100/Ialt * Record("Found") response.write "<td>" & font & Valg(i) & "</td><td>" & font & Round(procent) & "%</td><td><hr width='" & Procent * faktor & "' size='10' align='left' color='" & barcolor & "'></td></tr>" end if Next Response.Write "</table></div>" else session("retur") = Request.ServerVariables("SCRIPT_NAME") response.write font & Record("Beskrivelse") response.write "<html><head><title>Stem</title></head><body>" response.write "<form method='POST' action='stemreg.asp'>" response.write "<input type='hidden' name='Voteid' value=" & Id & ">" If Record("Valg1") <> "" then response.write "<input type='radio' value='" & Record("Valg1") & "' name='R1'>" & Record("Valg1") & "<br>" end if If Record("Valg2") <> "" then response.write "<input type='radio' value='" & Record("Valg2") & "' name='R1'>" & Record("Valg2") & "<br>" end if If Record("Valg3") <> "" then response.write "<input type='radio' value='" & Record("Valg3") & "' name='R1'>" & Record("Valg3") & "<br>" end if If Record("Valg4") <> "" then response.write "<input type='radio' value='" & Record("Valg4") & "' name='R1'>" & Record("Valg4") & "<br>" end if If Record("Valg5") <> "" then response.write "<input type='radio' value='" & Record("Valg5") & "' name='R1'>" & Record("Valg5") & "<br>" end if response.write "<p> <input type='submit' value='Stem' name='B1'> <input type='reset' value='Slet' name='B2'></p>" response.write "</form></body></html>" end if else response.write font & "Id findes ikke!!!" end if end function %>
Nu fungerer det... det var en simpel database-fejl! :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.