Entwicklung einer Downloaddatenbank, Probleme mit Kategorien

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

  • #61
    Nochmal aus der DB auslesen?

    EDIT:

    Manno, ich weiß, was ich erreichen will, aber ich weiß nicht, wie ich das umsetze.

    Irgendwie so stelle ich mir das vor:
    - Ausgabe Kategorien
    - Wenn Kategorie Kinder hat, dann Ausgabe Kinderkategorie plus Leerzeichen
    - ID eins nach oben zählen

    Das muss doch umzusetzen sein.


    Zuletzt geändert von Tomcat Chriss; 31.12.2006, 11:21.

    Kommentar


    • #62
      Bitte, mich nervst mittlerweile, das es nicht funktioniert. Was muss ich ändern und was fehlt noch, damit dieses blöde Script endlich funktioniert?

      Kommentar


      • #63
        Das muss doch umzusetzen sein.
        was meinst du, was wir hier machen?

        nein, nicht aus der db auslesen. es steht in $value (wo da?). so wie pid. du erinnerst dich bestimmt.

        Kommentar


        • #64
          PHP-Code:
          $sql 'SELECT id, pid, kategorie FROM kategorien';
          $res mysql_query($sql) or die(mysql_error());
          $cat_arr = array();
          while (
          $cat_arr[] = mysql_fetch_assoc($res));

          function 
          display_tree($parent$level$array) {
              foreach (
          $array as $node) {
                  for (
          $i 0$i $level$i++) $html .= ' '
                  
          if ($parent == $node['pid']) {
                      
          $html .= $node['kategorie'].'<br />';
                      
          $html .= display_tree($node['id'], ($level 1), $array);
                  }
              }
              return 
          $html;
          }

          echo 
          display_tree(00$cat_arr); 
          Ungetestet!

          Kommentar


          • #65
            OffTopic:

            Entschuldigt bitte, dass ich eben ein wenig grob reagiert habe. Ist eigentlich nicht meine Art. Habe nur einem Freund versprochen, ich bastel ihm sowas noch dieses Jahr, von wegen "ist ja kein Problem".

            Es ist für mich aber mittlerweile ein riesen Problem



            Hier nochmal der aktuelle Code
            PHP-Code:
                    $arr_count 0;
                
            $cat_arr = array();
                
                
            $sql "SELECT * FROM kategorien ORDER BY id, pid;";
                
            $result mysql_query($sql) or die(mysql_error());
                while (
            $row mysql_fetch_array($resultMYSQL_ASSOC))
                {
                
                   
            $id $row["id"];
                   
            $pid $row["pid"];
                   
            $kategorie $row["kategorie"];
                
                   
            $cat_arr[$arr_count] = array();
                   
            $cat_arr[$arr_count]['id'] = $id;
                   
            $cat_arr[$arr_count]['pid'] = $pid;
                   
            $cat_arr[$arr_count]['kategorie'] = $kategorie;
                
                   
            $arr_count $arr_count 1;
                   
                }
                
                
            output($cat_arr,0,0);
                
            }
                
            function 
            output($cat_arr$id$tiefe)
            {
                foreach (
            $cat_arr as $value)
                {
                    if (
            $value["pid"] == $pid)
                    {
                    for (
            $leer 1$leer <= $tiefe$leer++)
                    {
                        print 
            "&nbsp;";
                    } 
                   print 
            $value["kategorie"].'<br>';
                }
              
            output($cat_arr,$value["id"],$tiefe+1);
              }

            Bekomme jetzt die Meldung "Die Webseite kann nicht angezeigt werden." Wo habe ich denn jetzt schon wieder den Code vermurxt?

            Kommentar


            • #66
              haben wir uns nicht darauf geeinigt, dass der rekursive aufruf direkt und unmittelbar hinter die ausgabe des namens kommt?
              Zuletzt geändert von penizillin; 31.12.2006, 13:12.

              Kommentar


              • #67
                Oh ja, danke. Endlich gehts. Ich glaueb auch, ich habe es verstanden

                Vielen Dank für deine Engelsgeduld. Werde mir Mühe geben und den Rest auch vernünftig programmieren, dann poste ich es nochmal hier.

                Kommentar


                • #68
                  besorg dir bei gelegenheit ein buch über die grundzüge der programmierung (in einer richtigen programmiersprache), z.b. ist "java ist auch eine insel" sehr einsteigerfreundlich, aber auch etwas über datenbanken (ich würde joe celko empfehlen, aber er setzt bereits etwas an erfahrung voraus). nicht empfehlenswert sind die ganzen "tutorials", die man im internet findet -- diese sind oft veraltet, fehlerhaft und beschreiben oft unnötige workarounds, weil die autoren nichts außer einer skriptsprache in ihrem leben gesehen haben.

                  </imho>
                  viel erfolg.

                  Kommentar

                  Lädt...
                  X