Avatar billede boba_dk Nybegynder
18. september 2003 - 16:25 Der er 8 kommentarer og
1 løsning

Relaterede records

Jeg har brug for en funktion til nedenstående resultatside hvor man på samme side kan se en liste over andre produkter, med samme type som resultatet på den enkelte record, indenfor en given kollonne i databasen, f.eks andre produkter med samme designer som resultatet.

Min resultatside er helt basis:

produkttest.asp
-----------------------------
<html>
<title>Hente data fra database</title>
<head>
</head>
<body>

<%
' 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/test.mdb")
Conn.Open DSN

' Hent fra databasen afhængig af værdien id fra URL
strSQL = "Select * From test Where Id = " & Request.Querystring("id")
Set rs = Conn.Execute(strSQL)

' Produktdata
    Response.Write ("<br>")
    Response.Write ("<br>")
    Response.Write ("<br>")%>
<img src="images/<%=rs("file")%>">
<%
    Response.Write ("<br>")
    Response.Write (rs("text"))
Response.Write ("<br>")
    Response.Write (rs("design"))
Response.Write ("<br>")
    Response.Write (rs("placering"))

Conn.Close
Set Conn = Nothing
%>

<p><a href="default4.asp">Retur til listen</a></p>
</body>
</html>
------------------------------
Til orientering kan jeg oplyse st der er kun en databasefil og kun en tabel.

Jeg håber at jeg har forklaret dette forståeligt :-)
Avatar billede md_craig Nybegynder
18. september 2003 - 17:43 #1
Nej ikke helt forståeligt....
Tja oka... jeg er genneretl meget dårlig til af forstå hvad folk vil... men kan ikke lige se hvad du vil...

Er det noget med at hvis du får vist et produkt af Designere Jørgen Møller, Læestol med Hul, så viser den også hvad ellers Jørgen møller har lavet, eller hvordan ???
Avatar billede boba_dk Nybegynder
18. september 2003 - 18:07 #2
Ja, jeg vil se hvad designeren ellers har lavet.
Avatar billede md_craig Nybegynder
18. september 2003 - 21:33 #3
For så at gøre det forståeligt så laver vi 2 SQL, ellers kunne man have en SELECT - SELECT... men det plejer at drille...

strSQL = "SELECT * FROM Test WHERE id = " & Request.QueryString("id") & ";"
Set RS = Conn.Execute(strSQL)

If Not RS.EOF Then
  RefSQL = "SELECT * FROM Test WHERE designer = '" & RS("designer") & "';"
  Set RefRS = Conn.Execute(RefSQL)

' Produktdata
    Response.Write ("<br>")
    Response.Write ("<br>")
    Response.Write ("<br>")%><img src="images/<%=rs("file")%>"><%
    Response.Write ("<br>")
    Response.Write (rs("text"))
    Response.Write ("<br>")
    Response.Write (rs("design"))
    Response.Write ("<br>")
    Response.Write (rs("placering"))

' Designerens Andre ting
  Do While Not RefRS.EOF
      Response.Write RefRS("text") & "<br>"
    RefRS.MoveNext
  Loop
End If

Set RS = Nothing
Set RefRS = Nothing

Ved ikke om det gav mening ???
Avatar billede boba_dk Nybegynder
18. september 2003 - 22:25 #4
Det virker, men med det eneste problem, er bare at den viser alle records med samme designer, inklusive den "originale" record (id), er det muligt at lave en undtagelse af den record man ser på, da den jo ikke er designerers "andre" ting?
Avatar billede md_craig Nybegynder
18. september 2003 - 22:33 #5
Ja....

RefSQL = "SELECT * FROM Test WHERE designer = '" & RS("designer") & "' AND NOT id = " & Request.QueryString("id") & ";"

Skulle vist kunne gøre det... ellers må du lige skrive igen...
Avatar billede md_craig Nybegynder
18. september 2003 - 22:35 #6
eller

RefSQL = "SELECT * FROM Test WHERE designer = '" & RS("designer") & "' AND id != " & Request.QueryString("id") & ";"

Var vist sådan... Kan ikke lige huske de operatorer der skal bruges her...
Avatar billede md_craig Nybegynder
18. september 2003 - 22:37 #7
RefSQL = "SELECT * FROM Test WHERE designer = '" & RS("designer") & "' AND id <> " & Request.QueryString("id") & ";"

Og det var så endnu en mulighed, nu har jeg vist også være både SQL og flere Programmeringssprog igennem... ;o/
Avatar billede boba_dk Nybegynder
18. september 2003 - 22:38 #8
Den første virkede - tak for hurtig hjælp.

Smid et svar for points!
Avatar billede md_craig Nybegynder
18. september 2003 - 22:43 #9
Kay
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