19. februar 2004 - 19:09Der er
10 kommentarer og 1 løsning
Fejl i overførsel af oplysninger fra 2 tabeller
-Jeg er ikke så meget inde i ASP, men har alligevel forsøgt mig her! På min side vil jeg udskrive nogle data fra to forskellige tabeller i databasen, efter at have overført oplysningen "ID" fra sidste side via et link.
-Først skal "dato", "overskrift" og "nyhed" (som knytter sig til overførte ID) fra tabellen "NYHED" udskrives en gang, og derefter skal alle "svaroverskrift", "svarkomm" og "svardato" (hvor "svarId" = "ID") fra tabellen "NYHED_KOMM" udskrives, til der ikke er flere, som har det "svarID". Men et eller andet er fuldstændig galt i min kode. _________________________
Dette er en del af koden:
<% Set myConn = Server.CreateObject("ADODB.Connection") myConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../db/database.mdb")
strSQL = "SELECT * FROM nyhed WHERE id ="& request.querystring("id") Set rs = myConn.Execute(strSQL) %> _________________________
Og her imellem har jeg indsat:
<%=rs("dato")%>, <%=rs("overskrift")%> og <%=rs("nyhed")%> _________________________
Og her hentes og udskrives så andre oplysninger:
<% strSQL = "SELECT svarkomm, svaroverskrift, [svardato] FROM nyhed_komm WHERE svarId = " & rs("id") & " ORDER BY svardato DESC"
If Not (rs.BOF Or rs.EOF) Then
Response.Write "<table border=0>" Response.Write "<tr><th><font color='#01079F' face='Verdana' size=2><p align=left>Dato</p></font></th><th><font face='Verdana' color='#01079F' size=2><p align=left>Overskrift</p></font></th><th><font face='Verdana' color='#01079F' size=2><p align=left>Kommentar</p></font></th></tr>" Do While Not rs.EOF Response.Write "<tr><td width=150><font face='Verdana' size=1>" & rs("svardato") & "</font></td>" Response.Write "<tr><td width=150><font face='Verdana' size=1>" & rs("svaroverskrift") & "</font></td>" Response.Write "<td><font face='Verdana' size=2><b>" & rs("svarkomm") & "</b></font></td></tr>" rs.MoveNext Loop Response.Write "</table>" Else ' Hvis der ikke er fundet nogle kommentarer Response.Write "<p><font face='Verdana' size=2>Der er ikke fundet nogle kommentarer!</font></p>" End If
myConn.Close Set Conn = Nothing %>
_________________________
Men som sagt er der altså et eller andet helt galt... Hvad?
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.
strSQL = "SELECT svarkomm, svaroverskrift, [svardato] FROM nyhed_komm WHERE svarId = " & rs("id") & " ORDER BY svardato DESC" Set rs = myConn.Execute(strSQL)
hvis en ".Execute" fejler, skal man kigge på det den executer.. dvs, fejl er så i strSQL:
strSQL = "SELECT svarkomm, svaroverskrift, [svardato] FROM nyhed_komm WHERE svarId = " & rs("id") & " ORDER BY svardato DESC"
Typisk er det tal/tekst type fejl.. sådan som du har det nu, er svarID af typen tal, dvs, må ikke indeholde tekst/bogstaver. Hvis svarID indholdet bogstaver, skal det være:
strSQL = "SELECT svarkomm, svaroverskrift, [svardato] FROM nyhed_komm WHERE svarId = '" & rs("id") & "' ORDER BY svardato DESC"
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.