Sehr großes Treemenu

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

  • Sehr großes Treemenu

    Hallo,

    ich habe folgendes Problem:
    Ich möchte ein sehr großes Treemenu erstellen (ca. 10.000 Nodes). Alle dazu nötigen Daten kommen aus einer Oracle Datenbank.
    Jetzt stehe ich vor folgenden Problemen:
    • Nutze ich reines DHTML muss alles erstmal vom Client runtergeladen werden. Ein weiteres Problem ist, dass auch relativ alte Clients zum Einsatz kommen (Pentium 233), und dadurch nicht die gesamte Last (das parsen der großen Layoutdatei) auf den Client abgewälzt werden kann.
    • Nutze ich nur PHP, habe ich das Problem, dass die Seite jedesmal beim öffnen eines Nodes neugeladen werden muss. Das ist bei der Anzahl Knoten auch ziemlich langsam.


    Optimal wäre für mich ein DHTML Tree der im hintergrund die Struktur immer weiter einliest (Zuerst Ebene 1, dann komplett 2, danach die 3. Ebene), aber dennoch den bereits aufgebauten Tree anzeigt.
    Alternativ dazu wäre das On-Demand Loading, d.h. das nur der Tree komplett gelesen wird, der auch wirklich geöffnet wurde, aber soetwas habe ich entweder nicht gefunden, oder ich habe dann wieder das Problem des ständigen reloads.

    Das Problem ist, dass alle vorgefertigten Treemenus bis ca. 500 Nodes recht performant sind, darüber aber nichts zu holen ist.

    Ich habe auch schon daran gedacht, eine Java-Applet zu schreiben, dann ist allerdings wieder die Problematik des langsamen Clients akut.

    Kann mir jemand Tipps geben, wie ich soetwas realisieren kann?

    Danke

    -niko

  • #2
    AJAX vllt? http://de.wikipedia.org/wiki/AJAX

    Wäre aber auch XML + JS... und das wolltest du ja eigentlich nciht, unterstützt aber halt das ganze mit dem im Hintergrund laden...
    Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
    var_dump(), print_r(), debug_backtrace und echo.
    Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
    Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
    Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

    Kommentar


    • #3
      Das ist ja krass!

      Werde ich mir mal zu gemüte führen!

      Danke

      -niko

      Kommentar


      • #4
        Laden on Demand kann z.B: der hier:

        http://webfx.eae.net/dhtml/xloadtree/xloadtree.html

        Er kann für jeden geöffneten Node eine XML-Datei dynamisch nachladen, die Du mit PHP generierst. Braucht aber einen aktuellen Browser.

        Kommentar

        Lädt...
        X