Avatar billede asplokink12345 Nybegynder
16. august 2004 - 14:31 Der er 18 kommentarer og
1 løsning

Hent kommentarer fra bestemt i id2!

Jeg har ligget og roddet med et enkelt kommentar system men jeg får hele tiden fejl i det ved linie 7..

Nogen der kan sige hvordan jeg ellers skal gøre end det jeg har gjort..


<---kode start--->

<%option explicit%>
<%

    dim connection,SQLstringK,KRS
    Set Connection = Server.CreateObject("ADODB.Connection")
    Connection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath("database.mdb")
    SQLstringK = "SELECT * FROM kommentar where Id2 = " & Request.Querystring("id")
    SET KRS = Connection.Execute(SQLstringK)
      %>


<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>kommentar</title>
</head>

<body>
<% while not KRS.EOF%>
<table width="100%" border="1" cellpadding="0" cellspacing="0" bordercolor="#333333" id="table3">
        <tr>
          <td height="10" bordercolor="#FFFFFF" class="skrift">
            <table width="100%" border="0" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF" id="table4">
              <tr>
                <td width="60%" bordercolor="#FFFFFF" class="skrift" bgcolor="#FFFFFF"><span class="skrift"><strong></strong>af<a href="mailto:<% = KRS("email") %>">
                  <% = KRS("navn") %>
                  </a></span></td>
                <td width="40%" class="skrift" bgcolor="#FFFFFF"> <div align="right"><font size="1">Tilf&oslash;jet
                    kl.
                    <% = KRS("kl") %>
                    d.
                    <% = KRS("dato") %>
                    </font> </div></td>
              </tr>
            </table></td>
        </tr>
        <tr>
          <td bordercolor="#FFFFFF" class="skrift" bgcolor="#FFFFFF">
            <table width="100%" cellspacing="1" cellpadding="1" border="0" id="table5">
              <tr>
                <td height="20">
                  <% = KRS("kommentar") %>
                </td>
              </tr>
            </table></td>
        </tr>
      </table> <br>
<%
   
    KRS.MoveNext
wend
   
KRS.close
set KRS =nothing
connection.close
set connection = nothing
   

    %>

    </body>
</html>

<---kode slut--->
Avatar billede fennec Nybegynder
16. august 2004 - 14:53 #1
Det kan være fordi Request.Querystring("id") er tom. Er den det, eller hedder den evt id2 i stedet???
Avatar billede asplokink12345 Nybegynder
16. august 2004 - 14:59 #2
id2 hedder den i databasen og Request.Querystring("id") er ikke tomt.

Når folk går ind under bestemt link ryger de ind på siden kommentar.asp?id=1 fx. og når de opretter kommentarer ryger Request.Querystring("id") ind i ID2 altså i dette tilfælde 1... Derefter vil jeg have at når man går ind på showkommentar.asp?id=1 så viser den alle fra ID2 hvor ID2 = 1

Hvis du forstår?
Avatar billede fennec Nybegynder
16. august 2004 - 15:18 #3
Jeg er fuldstændig med. Det var bare en måde den kunne fejl på.
Den siger ikke mere præcist hvad fejlen er???
Avatar billede asplokink12345 Nybegynder
16. august 2004 - 15:19 #4
den skriver kun:

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

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

/asplogin/showkommentar.asp, line 8
Avatar billede fennec Nybegynder
16. august 2004 - 15:28 #5
Prøv lige at skrive SQLstringK ud på skærmen lige efter du har opbygget strengen.
Avatar billede asplokink12345 Nybegynder
16. august 2004 - 15:29 #6
er ikke den store haj, så gider du lige forklarer hvad du mener med det?
Avatar billede fennec Nybegynder
16. august 2004 - 15:31 #7
SQLstringK = "SELECT * FROM kommentar where Id2 = " & Request.Querystring("id")
response.write SQLstringK '<-------------------
SET KRS = Connection.Execute(SQLstringK)
Avatar billede fennec Nybegynder
16. august 2004 - 15:32 #8
så skulle den gerne komme til at stå i browseren når du kører siden.
Avatar billede asplokink12345 Nybegynder
16. august 2004 - 15:34 #9
så står der:

SELECT * FROM kommentar where Id2 = Request.QueryString(
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

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

/asplogin/showkommentar.asp, line 9

sådan du mente?
Avatar billede fennec Nybegynder
16. august 2004 - 15:38 #10
Det ser ud til at du mangler et " tegn et sted.

du er sikker på der står:
SQLstringK = "SELECT * FROM kommentar where Id2 = " & Request.Querystring("id")

og ikke:
SQLstringK = "SELECT * FROM kommentar where Id2 = Request.Querystring("id")

for den opfatter det som den sidst, og det er selvfølgelig forkert.
Avatar billede asplokink12345 Nybegynder
16. august 2004 - 15:42 #11
der står " &Request.Querystring("id")

har smidt det ud på www.frip.dk/asplogin/siden.zip

Så kan du se på det i showkommentar.asp
Avatar billede fennec Nybegynder
16. august 2004 - 15:59 #12
Det ser jo rigtig nok ud.
Det eneste problem jeg kan se, der evt. kunne være, er at du har ' omkring request'en, men det er måske fordi du har forsøgt dig med nogle forskelligt løsninger???
Avatar billede asplokink12345 Nybegynder
16. august 2004 - 16:01 #13
er kommet så langt af hjælp fra en fra activedeveloper.dk at det skal se sådan her ud:

SQLstringK = "SELECT * FROM kommentar where '" & Request("id2") & "' = '" & Request.Querystring("id") & "'"

Nu mangler jeg bare at få den til at vise kommentarer..
er det andet ellers rigtig?

og har prøvet mig frem faktisk ret meget det er derfor jeg nu gav op og søgte hjælp..
Avatar billede fennec Nybegynder
16. august 2004 - 16:14 #14
Jeg kan ikke se nogen problemer i resten af koden. Skriver den nogle af de andre felter ud???

Hvilken værdi har Request("id2") og Request.Querystring("id")???
Avatar billede asplokink12345 Nybegynder
16. august 2004 - 16:15 #15
altså request("id2") er id2 i databasen under tabelen kommentar og querystring henter fra sidens adresse... fx. showkommentar?id=1 så skal querystring være 1
Avatar billede fennec Nybegynder
16. august 2004 - 16:27 #16
Kan du ikke lige prøve at skrive SQL-sætningen ud igen????
Avatar billede asplokink12345 Nybegynder
16. august 2004 - 16:29 #17
SELECT * FROM kommentar where id2 = 'Request.QueryString('
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

/asplogin/showkommentar.asp, line 9


hvis jeg ændre

'" & Request.Querystring("id") & "'"

til 1 så funker det fint.
Avatar billede asplokink12345 Nybegynder
16. august 2004 - 16:42 #18
fandt svaret selv nu...

<code>
<%

    dim connection,SQLstringK,KRS
    Set Connection = Server.CreateObject("ADODB.Connection")
    Connection.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath("database.mdb")
    SQLstringK = "SELECT * FROM kommentar where id2 = " & Request.Querystring("id") & ""
    SET KRS = Connection.Execute(SQLstringK)
      %>
</code>

også ændret jeg id2 i databasen til tal og ikke tekst



Men læg et svar fordi du har hjulpet mig
Avatar billede fennec Nybegynder
17. august 2004 - 08:12 #19
svar
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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