Avatar billede muffemand Nybegynder
09. marts 2004 - 23:55 Der er 12 kommentarer og
1 løsning

Gruppe inddeling

Jeg har et lille problem, som jeg troede var ret nemt, men det var det ikke...
Det går i alt sin enkelthed ud på at jeg har 3 tabeller.
Den ene består af: Fisk
Den anden: Dyr
Den trejde: Fugle

Og så skal det være sådan at man tilføje en masse dyr, fisk og fugle (Det er til en ven) vha. af nogle forme, hvor man skal beskrive dyret/fisken/fuglen, give det et navn og så vælge hvilken gruppe den hører under.

Så er det så at den skulle, hvis man valgte fugle, skrive fuglen i tabellen for fugle. Og omvendt hvis man valgte nogle af de andre.

Jeg troede så at man bare kunne sige et eller andet med at: <% If rs("Gruppe") = "Fugle" Then %>

Men det kunne man åbenbart IKKE :(

Så er der nogle der har et forslag til hvordan man kan gøre ?
Avatar billede eagleeye Praktikant
09. marts 2004 - 23:58 #1
Husk på at i en if sætning er "Fugle" ikke lig "fulge" den er nemlig case sensitiv så prøv:

If LCase(rs("Gruppe")) = "fugle" Then
Avatar billede muffemand Nybegynder
10. marts 2004 - 00:47 #2
Tjaaa, det virkede ikke.
Men så prøvede jeg at requeste formen i stedet, og det virker stadig ikke :(

Jeg ved ikke om det hjælper, men koden ser således ud:

<%
              Set myConn1 = Server.CreateObject("ADODB.Connection")
              myConn1.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("Data/links.mdb")
              Set rs = Server.CreateObject("ADODB.RecordSet")

                strSQL = "SELECT * FROM Links ORDER by Navn"
                rs.Open strSQL, myConn, 1, 3
            %>
           
            <% IF Session("hejhej") = 1 Then %>
            <center><p class="norm"><a class="hoved" href="opret_link.asp">Opret link</a></p></center>
            <% End If %>
           
              <%
                strNavn = rs("Navn")
                strURL = rs("URL")
                strGruppe = rs("Gruppe")
                strBeskrivelse = rs("Beskrivelse")
                strDato = rs("Dato")
              %>

            <table border="0" width="99%" cellspacing="0" cellpadding="1">
              <tr>
                <td width="100%" bgcolor="#87C815" class="menu2" colspan="2"><b>Partnere</b></td>
              </tr>
            <% IF Request("Gruppe") = 1 then %>
              <tr>
                <td width="70%" class="menu2">&nbsp;<img src="Pics/pil.gif" width="12" height="9" border="0" alt="">&nbsp;<b><a href="<%= rs("URL") %>" target="_blank"><%= rs("Navn") %></a></td>
                                                                                                                                              <td width="70%" class="menu2">S L E T</td>
              </tr>
              <tr>
                <td style="border-bottom: 1 solid rgb(182,223,100)" width="90%" class="norm" colspan="2">&nbsp;&nbsp;<img src="Pics/pil.gif" width="12" height="9" border="0" alt="">&nbsp;<% rs("Beskrivelse") %></td>
              </tr>
              <%
              rs.movenext
              loop
              %>
            </table>
               
            <% End If %>


Har jeg gjort andet forkert ?
Avatar billede eagleeye Praktikant
10. marts 2004 - 08:53 #3
Vil du gemme eller udskrive??
Avatar billede muffemand Nybegynder
10. marts 2004 - 12:49 #4
Udskrive
Avatar billede eagleeye Praktikant
10. marts 2004 - 20:09 #5
og de skal grupperes efter Gruppe?
Først vise Dyr, så alle Fisk, så alle Fugle ?
Avatar billede muffemand Nybegynder
10. marts 2004 - 20:12 #6
Ja, dyr skal vises i tabellen med dyr, fisk i den med fisk, og fugle i den med fugle...
Rækkefølgen er sådan set ligegyldig !
Bare det bliver udskrevet således at de kommer i den rigtige gruppe !
Avatar billede eagleeye Praktikant
10. marts 2004 - 20:22 #7
skal det bare være en tabel med eksvis dyr ?
og ikke 3 tabeller med dyr, fisk, og fugle?
Avatar billede eagleeye Praktikant
10. marts 2004 - 20:26 #8
Hvis det skal være 3 tabeller med hver sin gruppe i kan du lave en group by i SQL sætningen sådan dem som høre i samme gruppe kommer ud efter hinanden. Så prøv koden sådan her:


<%
              Set myConn1 = Server.CreateObject("ADODB.Connection")
              myConn1.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("Data/links.mdb")
              Set rs = Server.CreateObject("ADODB.RecordSet")

              strSQL = "SELECT * FROM Links GROUP BY gruppe ORDER by Navn"
              rs.Open strSQL, myConn, 1, 3
            %>
           
            <% IF Session("hejhej") = 1 Then %>
            <center><p class="norm"><a class="hoved" href="opret_link.asp">Opret link</a></p></center>
            <% End If %>
         
              <%
          tmpGruppe = ""
          do while not rs.EOF
            if tmpGruppe <> rs("gruppe") then
              if tmpGruppe <> "" then Response.Write "</table>"
              tmpGruppe = rs("gruppe")
            %>
            <table border="0" width="99%" cellspacing="0" cellpadding="1">
              <tr>
                <td width="100%" bgcolor="#87C815" class="menu2" colspan="2"><b><%=tmpGruppe%></b></td>
              </tr>
      <%
            end if
      %>
            <tr>
              <td width="70%" class="menu2">&nbsp;<img src="Pics/pil.gif" width="12" height="9" border="0" alt="">&nbsp;<b><a href="<%= rs("URL") %>" target="_blank"><%= rs("Navn") %></a></td>
                                                                                                    <td width="70%" class="menu2">S L E T</td>
              </tr>
              <tr>
                <td style="border-bottom: 1 solid rgb(182,223,100)" width="90%" class="norm" colspan="2">&nbsp;&nbsp;<img src="Pics/pil.gif" width="12" height="9" border="0" alt="">&nbsp;<% rs("Beskrivelse") %></td>
              </tr>
              <%
              rs.movenext
              loop
              %>
            </table>
               
            <% End If %>
Avatar billede muffemand Nybegynder
10. marts 2004 - 20:26 #9
Hmmm, taler vi om tabellerne i DB'en ?
Jeg mener f.eks. sådan her:
<table>
  <tr>
    <td>Fugle</td>
  </tr>
</table>

<table>
  <tr>
    <td>Dyr</td>
  </tr>
</table>

<table>
  <tr>
    <td>Fisk</td>
  </tr>
</table>

Og så skal, hvis det f.eks. er en fugl man vil indsætte, den indsætte den fugl i tabellen med fugle, altså således:
<table>
  <tr>
    <td>Fugle</td>
  </tr>
  <tr>
    <td>Solsort - denne fugl er rigtig sød</td>
  </tr>
</table>

Håber du forstår hvad jeg mener !
Avatar billede muffemand Nybegynder
11. marts 2004 - 17:54 #10
Eagleeye:
Det virker faktisk, der er dog et problem... Hvis man f.eks. tilføjer et dyr under dyr selvfølgelig, og man så tilføjer endnu et dyr, lige efter, så kommer de til at stå under hinanden som de skal.
Hvis man så efter det tilføjer en fugl under fugle, så bliver der som der skal lavet en ny tabel med overskriften fugle, men tilføjer man så derefter endnu et dyr, bliver der lavet en ny tabel med overskriften dyr, og den kommer altså til at stå for sig selv i stedet for at blive tilføjet under den forrige dyre tabel...
Avatar billede eagleeye Praktikant
11. marts 2004 - 23:08 #11
hmm ok, prøv at lave SQL sætningen:

strSQL = "SELECT * FROM Links GROUP BY gruppe ORDER by Navn"

Omt til denne:

strSQL = "SELECT * FROM Links ORDER by gruppe, Navn"
Avatar billede muffemand Nybegynder
12. marts 2004 - 18:13 #12
Det virkede fandeme

Tak for hjælpen du :)
Hvordan giver jeg dig dine point ?
Avatar billede eagleeye Praktikant
12. marts 2004 - 18:23 #13
Så laver jeg lige et svar, så skulle du kunne give mig point ;)
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