Avatar billede iggipop Nybegynder
19. september 2004 - 00:01 Der er 4 kommentarer og
1 løsning

Skal splitte en løkke op..eller noget

Hej!

Har følgende :

          <%
      SQL = "SELECT * FROM produkter ORDER By kat,rknr"
      Set RecSet = Connect.Execute(SQL)
      IF RecSet.EOF then
      Response.Write "ingen produkter"
      ELSE
      Do until RecSet.EOF
      Response.write RecSet("kat")
      Response.write " - "
      Response.write RecSet("rknr")
      Response.write " "
      Response.Write "<b>" & RecSet("namn") & "</b> | <a href='admin.asp?object=product&do=delete&id=" & RecSet("id") & "'>Slet</a> / "
      Response.Write "<a href='admin.asp?page=products&more=update&id=" & RecSet("id") & "'>Ret</a>"
      Response.Write " "& kollabild(RecSet("id"))&"<br>"
      RecSet.MoveNext
      Loop
      END IF
      RecSet.Close
      Set RecSet = nothing
      %>

RecSet("kat") repræsenterer en værdi. Den værdi repræsenterer en kategori. Der kan altså godt være flere hvor ReSet fx er lig 10 og så nogle hvor den er 11 osv...Ligenu skrives de jo ud med alle 10'er først så 11 og derudaf takket været order by kat, MEN jeg ville gerne have en <br> mellem 10'ere og 11'er osv..altså når den skifter...hvordan gør jeg det ?
Avatar billede eagleeye Praktikant
19. september 2004 - 00:12 #1
Så kan du gemme den "kat" du er kommet til så de to første linjer:

      Do until RecSet.EOF
      Response.write RecSet("kat")

Bliver til dette:

      Do until RecSet.EOF
      tmpKat = RecSet("kat")
      Response.write RecSet("kat")


og så udskrive <br> efter movenext hvis det er en ny kategori, så disse to:

      RecSet.MoveNext
      Loop

Bliver til:

      RecSet.MoveNext
      if not RecSet.EOF then
        if tmpKat <> RecSet("kat") then Response.Write "<br>"
      end if
      Loop
Avatar billede iggipop Nybegynder
19. september 2004 - 08:00 #2
Kanon...taak.
Jeg har lige et tillægsspørgsmål...
Jeg ville jo allerhelst have kategorinavnet som overskrift istedet for et <br>, men navnet ligger i en anden tabel.
Jeg har:
Tabel1
Kategorier
id - navn

Tabel2
Produkter
id - navn - artnr - beskrivelse osv...

Hvordan laver jeg sql'en om så jeg kan hente navnet også ?
Avatar billede eagleeye Praktikant
19. september 2004 - 09:34 #3
Du kan gøre det sådan her, hvis kat i produkter er en tal kolonne. :

SQL = "SELECT produkter.*, Kategorier.navn as katnavn FROM produkter INNER JOIN Kategorier ON  Produkter.kat = Kategorier.id ORDER By kat,rknr"
Avatar billede eagleeye Praktikant
19. september 2004 - 09:38 #4
Så kan du prøve at rette koden til dette så er kategorinanvet en overskrift og linkne kommer uder:


          <%
      SQL = "SELECT produkter.*, Kategorier.navn as katnavn FROM produkter INNER JOIN Kategorier ON  Produkter.kat = Kategorier.id ORDER By kat,rknr"
      Set RecSet = Connect.Execute(SQL)
      IF RecSet.EOF then
      Response.Write "ingen produkter"
      ELSE
      tmpKat=""
      Do until RecSet.EOF
      if tmpKat <> RecSet("kat") then
        Response.write "<h2>" & RecSet("katnavn") & "<h2><br>"
        tmpKat = RecSet("kat")
      end if
      Response.write " - "
      Response.write RecSet("rknr")
      Response.write " "
      Response.Write "<b>" & RecSet("namn") & "</b> | <a href='admin.asp?object=product&do=delete&id=" & RecSet("id") & "'>Slet</a> / "
      Response.Write "<a href='admin.asp?page=products&more=update&id=" & RecSet("id") & "'>Ret</a>"
      Response.Write " "& kollabild(RecSet("id"))&"<br>"
      RecSet.MoveNext
      if not RecSet.EOF then
        if tmpKat <> RecSet("kat") then Response.Write "<br>"
      end if
      Loop
      END IF
      RecSet.Close
      Set RecSet = nothing
      %>
Avatar billede iggipop Nybegynder
19. september 2004 - 12:57 #5
Kanon.....det var en stor hjælp...takker mange gange
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