kategorien ausgeben

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

  • kategorien ausgeben

    hallo,

    ich habe mir was gebastelt was vom prinzip her auch klappt aber nur
    zur hälfte.
    bekomme es hin das er mir die hauptcat die untercat und die unteruntercat anzeigt.
    aber wenn ich jetzt eine neue hauptcat erstelle dann zeigt er mir diese nicht an.

    das ist meine code.

    PHP-Code:
    function getcats() {
    global 
    $db$cats;
    $hauptcats $db->query("SELECT * FROM kategorien WHERE underkat=0 ORDER BY name ASC");
    while(
    $row $db->fetch_array($hauptcats)) {
    $hauptid $row['id'];
    $hauptname $row['name'];
    $cats .= "<b><a href=\"test.php?id=".$hauptid."\">".$hauptname."</a></b><br />";

    $subcats $db->query("SELECT * FROM kategorien WHERE underkat=".$hauptid." ORDER BY name ASC");
    while(
    $row_1 $db->fetch_array($subcats)) {
    $subid $row_1['id'];
    $subname $row_1['name'];
    $cats .= "<i><a href=\"test.php?id=".$subid."\">".$subname."</a></i><br />";

    $sub_subcats $db->query("SELECT * FROM kategorien WHERE underkat=".$subid." ORDER BY name ASC");
    while(
    $row_12 $db->fetch_array($sub_subcats)) {
    $sub_subid $row_12['id'];
    $sub_subname $row_12['name'];
    $cats .= "<i><a href=\"test.php?id=".$sub_subid."\">".$sub_subname."</a></i><br />";
    }
    }
    }
    return 
    $cats;

    Mfg Clamsy

  • #2
    Kann eigentlich nur daran liegen, dass die neu angelegte Hauptkategorie nicht underkat=0 hat, denn sonst würde mindestens ein zusätzlicher Zeilenumbruch auf der Seite zu sehen sein.

    Übrigens wäre eine beliebig tiefe Verschachtelung von Kategorien möglich, wenn du die Funktion rekursiv schreiben würdest.

    Kommentar


    • #3
      kann es sein, dass underkat bei einer neuen hauptkat nicht 0 sondern NULL ist?

      btw:
      - "select * ... ", wenn du nur die id und den namen willst?
      - queries in while-schleifen sind böse.
      - was passiert eigentlich, wenn ich auf eine "unteruntercat" klicke?
      Kissolino.com

      Kommentar


      • #4
        in meiner db steht es so drin
        Code:
         id | undercat  |  name
         1  |	  0     |  Test
         2  |	  1     |  Test 1
         3  |	  2     |  Test 2
        
         4  |	  0     |  Test 3
         5  |	  4     |  Test 4
        was habe ich nun falsch?
        Mfg Clamsy

        Kommentar


        • #5
          underkat != undercat

          Kommentar


          • #6
            sorry schreibfehler
            habe jetzt mal das
            PHP-Code:
            list($hauptcats_count) =
            mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM kategorien WHERE underkat=0 ORDER BY name ASC"));
            echo 
            $hauptcats_count
            geschrieben und da gibt er mir auch ne 2 aus
            Mfg Clamsy

            Kommentar

            Lädt...
            X