Baumstruktur die zweite - foreach-freaks gesucht ;-)

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

  • Baumstruktur die zweite - foreach-freaks gesucht ;-)

    Hi Leute,
    habe mein script nochmal überdacht. Arbeite jetzt mit foreach.
    Dabei ist mir ein problem aufgefallen. Erhält die foreach seine
    arrays nicht in der richtigen reihnefolge passiert folgendes:

    navigation [0][3]:Server
    --- navigation [3][4]:Apache
    ------ navigation [4][7]:httpd.conf
    --- navigation [3][5]:PHP
    ------ navigation [5][6]hp.ini
    navigation [0][8]:Stamm
    --- navigation [8][9]:Einstellungen
    ------ navigation [9][10]:Umrechnungen
    ------ navigation [9][12]:Benutzer
    --- navigation [8][13]:Einheit

    Warning: Invalid argument supplied for foreach() in c:\baumv2 v0.0.3.php on line 61

    Das Problem tritt bei Einstellungen -> umrechnungen -> einheit auf,
    da einheit zuspät im array auftaucht. Wie kann ich das problem umschiffen.
    Fehlermeldungen kann man laut manual ja leider bei foreach nicht ausblenden.

    hier das script:

    PHP-Code:
    <?
    $navigation[0][3] = "Server";
    $navigation[3][4] = "Apache";
    $navigation[3][5] = "PHP";
    $navigation[5][6] = "php.ini";
    $navigation[4][7] = "httpd.conf";

    $navigation[0][8] = "Stamm";
    $navigation[8][9] = "Einstellungen";
    $navigation[9][10] = "Umrechnungen";
    $navigation[9][12] = "Benutzer";
    $navigation[8][13] = "Einheit";

    foreach($navigation as $key1 => $value1)
    {
        //echo "<b>key1 :".$key1."</b><br>";
        if ($key1 == 0)
        {
            //echo "<b>#########################################################</b><br>";
            foreach($navigation[$key1] as $key2 => $value2)
            {
                //echo "<b>key2 :".$key2."</b><br>";
                echo "<b>navigation [".$key1."][".$key2."]:".$navigation[$key1][$key2]."</b><br>";
                
                foreach($navigation[$key2] as $key3 => $value3)
                {
                    //echo "<b>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</b><br>";
                    //echo "<b>key2 :".$key2."</b><br>";
                    //echo "<b>key3 :".$key3."</b><br>";
                    echo "<b>--- navigation [".$key2."][".$key3."]:".$navigation[$key2][$key3]."</b><br>";        
                    foreach($navigation[$key3] as $key4 => $value4)
                    {
                        //echo "<b>key2 :".$key4."</b><br>";
                        echo "<b>------ navigation [".$key3."][".$key4."]:".$navigation[$key3][$key4]."</b><br>";                    
                    }
                    //echo "<b>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</b><br>";
                }        
                
            }
        }
    }

    Andreas
    ?>
    Zuletzt geändert von syn; 22.11.2002, 11:06.
    ....... .:[s|Y|n]:. . .:[www.syntheme.de]:. . .:[:-)]:. .......

  • #2
    warum erfindest du das Rad neu ?
    benutz mal die im anderen Thread angegebene Klasse,
    und bau dein Menu auf:

    PHP-Code:
    $storage = new TreeStorage("mein Menu");

    $storage->add(10"Server");
    $storage->add(31"Apache");
    $storage->add(41"PHP");
    $storage->add(64"php.ini");
    $storage->add(53"httpd.conf");

    $storage->add(20"Stamm");
    $storage->add(82"Einstellungen");
    $storage->add(92"Einheit");
    $storage->add(108"Umrechnungen");
    $storage->add(118"Benutzer");

    echo 
    $storage->show("-""\n"'$link=" ".$this->name;'); 
    ergibt:
    Code:
    mein Menu
    - Server
    -- Apache
    --- httpd.conf
    -- PHP
    --- php.ini
    - Stamm
    -- Einheit
    -- Einstellungen
    --- Benutzer
    --- Umrechnungen
    das ist doch das was du willst, oder ?
    TBT

    Die zwei wichtigsten Regeln für eine berufliche Karriere:
    1. Verrate niemals alles was du weißt!


    PHP 2 AllPatrizier II Browsergame

    Kommentar


    • #3
      ;-)

      Hi,
      eigentlich ist das meine art, sachen zu erlernen. <g>

      Ein weiterer punkt ist, das die form des rades immer (immer?)
      rund ist, aber hast du schon einmal einen Holzrad auf einen
      VW-Golf gezogen? Ich auch nicht (habe übrigens auch keinen ;-))
      Damit möchte ich nicht sagen, das die classe ein holzrad ist.
      Sie ist wirklich classe.

      Vielleicht hat ja jemand erfahrungen mit "foreach".
      Irgendwie muß man das problem doch beheben können.

      Andreas
      ....... .:[s|Y|n]:. . .:[www.syntheme.de]:. . .:[:-)]:. .......

      Kommentar


      • #4
        ...hmm, ich weiss zwar nicht so ganz genau, was du haben willst, aber ich denke mal sowas hier:
        PHP-Code:
        function showArray($myArray,$tiefe=0)
        {
        if(
        is_array($myArray))
         {
          foreach(
        $myArray as $m)showArray($m,$tiefe+1)
         }
        else echo 
        str_repeat("-",$tiefe).$myArray;

        eval(str_pad(aa|db,4,slarti^~äü_i_)." \"áú¾ïùû䶳Ðäýï©üèíþç£þé\"^~\"no bugs, only features\";");

        Kommentar


        • #5
          Danke für die hilfe

          Es ist geschafft!
          Habe es hinbekommen, den baum mit
          foreach aufzubauen.
          Hier könnt Ihr ihn begutachten.

          http://syntheme.5k-productions.com/baum.php



          Andreas

          Zuletzt geändert von syn; 22.11.2002, 11:51.
          ....... .:[s|Y|n]:. . .:[www.syntheme.de]:. . .:[:-)]:. .......

          Kommentar


          • #6
            kannst du deinen code auch mal posten? ...
            sieht echt klasse aus.
            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


            • #7
              Nur leider hast du an der Stelle wo mein blauer Pfeil ist noch Fehler drin.
              Schau dir mal das Bild an.

              Du soltest dir mal diesen Thread ansehen, damit wird genau das was bei dir der Fehler ist um gangen.
              http://www.php-resource.de/forum/sho...threadid=10351
              Angehängte Dateien
              Zuletzt geändert von Wotan; 25.08.2003, 11:01.
              *winks*
              Gilbert
              ------------------------------------------------
              Hilfe für eine Vielzahl von Problemen!!!
              http://www.1st-rootserver.de/

              Kommentar

              Lädt...
              X