webForumDet fria alternativet

Skriva ut

ASPur ASP

3 svar · 274 visningar · startad av Cy-4

Medlem sedan maj 200180 inlägg
Frågan#1

Hallå!

Jag har ytterligare ett problem. Jag har precis börjat kolla på det här med JOIN och sådant. Min databas ser ut så här

* Lan
- ID
- Name
- Description
- StartDate
- EndDate

* Competitions
- ID
- LanID
- Name

Jag vill nu skriva ut alla Lan som finns i databasen och vilka Competitions som tillhör varje lan. Jag undrar nu hur jag ska lösa detta på ett smidigt sätt jag antar att JOIN är det smidigaste. Det finns flera Competitions för varje Lan och jag undrar hur jag ska göra för att kunna skriva ut alla Competitons som finns för ett Lan. Ni får gärna komma med exempel hur jag ska skriva för att kunna skriva ut alla Competotions med Recsetet.

Jag vill att det ska se ut så här:
Name: Namn
Description: Beskrivning
Startdate: Datum
Enddate: Datum
Competitions: Comp1, Comp2, Comp3...

Hoppas att någon fattar vad jag menar och kan hjälpa mig.

Medlem sedan dec. 200012 464 inlägg
#2
q = " select l.name,l.description,l.startDate,l.enddate,c.name as competition " & _
" from lan l inner join competition c on l.id = c.lanid " &_
" order by lan.name"
set rs = connect.execute(q)

lan = ""
while not rs.eof
   if lan <> rs("name") then
      if lan <> "" then response.write "<br>"
      lan = rs("name")
'
'skriv ut allt om lan
'
      c = "Competitions: "
   end if
   response.write c & rs("competition")
   c = ", "
   rs.movenext
wend
 if lan <> "" then response.write "<br>"
Medlem sedan maj 200180 inlägg
#3

tackar så mycket, ska kolla på det senare när jag får tid.

Medlem sedan maj 200180 inlägg
#4

Hallå!

Jag har nu lagt in det jag vill ha med i din kod men jag kommer inte på hur jag ska kunna skriva ut något för varje lan efter det att jag skrivit ut alla Competitions. Så här ser koden ut nu:

lan = ""
While Not objRecset.EOF
  If lan <> objRecset("Name") then
    Response.Write "Name: " & objRecset("Name") & "<br>" & VbCrLf
    Response.Write "Startdate: " & objRecset("StartDate") & "<br>" & VbCrLf
    Response.Write "Enddate: " & objRecset("EndDate") & "<br>" & VbCrLf
    Response.Write "Description: " & "<i>" & objRecset("Description") & "</i><br>" & VbCrLf
    If lan <> "" then response.write "<br>" & VbCrLf
      lan = objRecset("Name")
      c = "Competitions: "
    End if
    response.write c & "<a href=""test.asp?showcomp_id=" & objRecset("CompID") & """>" & objRecset("competition") & "</a>"
    c = ", "
    objRecset.Movenext
Wend
 If lan <> "" Then response.write "<br>" & VbCrLf

Jag vill ha det så att efter att den har skrivit ut alla competitions så ska den skriva ut Description. Jag vill inte ha det som det är nu där det ligger innan Competitions eftersom det ibland kan vara flera rader i Description och jag tycker inte det blir så snyggt då.

Hoppas på hjälp.

132 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)