Avatar billede artery_graphics Nybegynder
25. september 2002 - 00:43 Der er 15 kommentarer og
1 løsning

Bestemt ID med SQL forespørgsel?

Hvordan trækkes indholdet fra DB ind på en side via ID?

På min forside er der vist to nyheder. Disse trækkes ind på siden fra DB og altid kun 2 selv om flere står i DB. De 2 nyheder listes efter nyeste dato. Hver nyhed har et "Read more..." link der peger på undersiden page.asp hvor hele den ønskede nyhed kan læses.. I linket står:
<a href="page.asp?id="2">Read more here</a>

Men hvad skal der stå i SQL forespøgslen for KUN at trække den specifike nyhed ind på siden page.asp?


<%
' Databaseforbindelse - husk at angive sti til din database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("../db/theselfimages.mdb")
Conn.Open DSN
                   
' SQL forespørgsel
strSQL = "Select * From tblNews"
' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)
%>


Min DB er 2-sproget og ser sådan ud...

ID  DATO  NEWS  NYHED  HEADLINE  OVERSKRIFT  CONTENT  INDHOLD
Avatar billede keysersoze Ekspert
25. september 2002 - 00:45 #1
strSQL = "Select * From tblNews WHERE id = " & request.querystring("id") & ""
Avatar billede artery_graphics Nybegynder
25. september 2002 - 00:50 #2
Jeg får denne fejl:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'id ='.

/page.asp, line 116
Avatar billede artery_graphics Nybegynder
25. september 2002 - 00:53 #3
Du kan lige se det hele her:

<%
Session.TimeOut = 40
IF request.form("sprog") = "UK" THEN
Session("sprog") = "UK"
sprogid = "DK"
ELSE
Session("sprog") = "DK"
sprogid = "UK"
END IF
%>


<%
' Databaseforbindelse - husk at angive sti til din database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("../db/theselfimages.mdb")
Conn.Open DSN
                   
' SQL forespørgsel
strSQL = "Select * From tblNews WHERE id = " & request.querystring("id") & ""
' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)

                    Do While Not rs.EOF
                   
                    if sprogid="UK" then
                   
                    %>
           
               
                    <%if not rs.eof then%>
                    <p class="tekst"><span class="overskrift"><%=rs("headline")%></span><br><%=rs("content")%><br><br></p>
                    <%else%><p class="tekst">No news...</p><%end if%>
                   
                    <%elseif sprogid="DK" then%>
                    <%if not rs.eof then%>
                    <p class="tekst"><span class="overskrift"><%=rs("overskrift")%></span><br><%=rs("indhold")%><br><br></p>
                    <%else%><p class="tekst">Ingen nyheder...</p><%end if%>
                   
                    <%
                    end if
                    rs.movenext
                    Loop
                    %>


  <% ' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>
Avatar billede Slettet bruger
25. september 2002 - 00:53 #4
strSQL = "Select * From tblNews WHERE id = " & request.querystring("id")
hvad med dette ?
Avatar billede artery_graphics Nybegynder
25. september 2002 - 01:00 #5
Stadig denne her:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'id ='.

/page.asp, line 116


LINE 116 er denne:
Set rs = Conn.Execute(strSQL)
Avatar billede keysersoze Ekspert
25. september 2002 - 01:01 #6
det er fordi du skal lave dit link således i stedet;

<a href="page.asp?id=2>
Avatar billede Slettet bruger
25. september 2002 - 01:02 #7
Måske fordi dit link kun skal hedde: page.asp?id=2
Avatar billede Slettet bruger
25. september 2002 - 01:03 #8
*GG* enighed
Avatar billede artery_graphics Nybegynder
25. september 2002 - 01:11 #9
Men kan det se sådan ud?
<a href="page.asp?id="2">Read more here</a>
Avatar billede artery_graphics Nybegynder
25. september 2002 - 01:12 #10
Sådan mener jeg?

<a href="page.asp?id=2>Read more here</a>
Avatar billede keysersoze Ekspert
25. september 2002 - 01:16 #11
nej... sådan;

<a href="page.asp?id=2">Read more here</a>
Avatar billede artery_graphics Nybegynder
25. september 2002 - 01:17 #12
Hmm.. så forsvandt mit link helt fra siden hvis jeg fjerner de " "
Avatar billede artery_graphics Nybegynder
25. september 2002 - 01:17 #13
Og det virker stadig ikke med den SQL forespørgsel
Avatar billede keysersoze Ekspert
25. september 2002 - 01:19 #14
dit link skal se sådan ud;

<a href="page.asp?id=2">Read more here</a>

havde fjernet en " for meget i mit første svar - og hvis linket ser sådan ud burde sql'en også virke
Avatar billede artery_graphics Nybegynder
25. september 2002 - 01:20 #15
Jaaaaaaaaaaaaaah! Hurra...
Nu virker det... jeg er bare en FED spadser med de link tags
Avatar billede artery_graphics Nybegynder
25. september 2002 - 01:21 #16
Har du nogen gode idéer til denne?
http://www.eksperten.dk/spm/261635
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester