Unterteilung der DB-Ausgabe

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Unterteilung der DB-Ausgabe

    Hi!

    Ich habe meine Datenbank mit den Feldern name und typ. jetzt will ich die gesamte DB ausgeben, und dabei die Datensätze unterteilen:

    Typ 1:
    Hund
    Katze

    Typ 2:
    Maus
    Meerschwein

    Typ 3:
    Laus
    Ameise

    es sollen alle des Typs 1 zusammen ausgegeben werden, und dazu die passende Überschrift, dann die Überschrift Typ 2 und dann die entsprechenden Namen, usw.

    Ich habe mir gedacht, dass ich die zuerst ORDER BY typ. Klappt ja auch wunderbar. Aber wie stelle ich das jetzt am intelligentesten an, dass da die Trenner rein kommen. Von mir aus kann auch überall nur ein <hr> als Trenner dienen.

    Danke euch!

  • #2
    Re: Unterteilung der DB-Ausgabe

    sowas nennt man in der programmierung einen gruppenwechsel.


    du gibst die gesammten daten meinetwegen in einer whileschleife aus.
    vor der whileschleife belegst du dir eine variable $typ_datensatz_davor mit irgendeinem wert, der in der db garantiert nicht vorkommt.

    in der whileschleife vergleichst du jetzt den typ des aktuellen datensatzes mit $typ_datensatz_davor.
    haben beide einen unterschiedlichen inhalt, dann liegt ein gruppenwechsel vor, du musst also jetzt was ausgeben, z.b. den <hr> zum trennen, oder du fragst den typ ab, um davon abhängig eine überschrift auszugeben.
    wenn die beiden den gleichen inhalt haben, machst du nichts weiter.

    anschliessend gibst du in beiden fällen den aktuellen datensatz aus, und setzt anschliessend ganz am schluss der whileschleife $typ_datensatz_davor = typ des aktuellen datensatzes.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Danke dir!

      Eigentlich eine recht Simple Lösung. Aber wie das im Leben so ist.

      Anm.: Es reicht ja wenn man $typ_datensatz_davor (vereinfacht $j ) = "" ist. Das kommt nicht vor, wenn ich nen Standard definiert hab.

      Kommentar


      • #4
        Original geschrieben von TobiaZ
        Danke dir!

        Eigentlich eine recht Simple Lösung. Aber wie das im Leben so ist.

        Anm.: Es reicht ja wenn man $typ_datensatz_davor (vereinfacht $j ) = "" ist. Das kommt nicht vor, wenn ich nen Standard definiert hab.
        jepp. sehr simple. so mache ich das auch, wenn ich einfach stur die daten ausgeben will. besser als erst einmal alle type zu nehmen und dann jeden typ einzeln in sql abzufragen. irgendeiner hatte das hier nämlich so gemacht.

        mit deiner vorgabe "" ist die beste lösung, wenn du einen DEFAULT-wert in der DB hast, der != "" ist. die frage ist nur, was NULL ist.

        NULL != ""

        oder

        NULL == ""

        ???

        wie behandelt das php?
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar

        Lädt...
        X