Tschjensi: Forum Menübaum

Ich suche nach einen grafischen Menübaum um einen Stammbaum aus einer SQL Datenbank zu erzeugen.

Der aus diesem Forum sieht Grafisch ansprechend aus, welcher über css erstellt wurde. Kennt jemand einen ähnlichen als Demodownload?

Gruss Tschjensi

  1. Hallo Tschjensi,

    Der aus diesem Forum sieht Grafisch ansprechend aus, welcher über css erstellt wurde.

    Eine erste Anlaufstelle könnte unser Wiki sein.

    Bis demnächst
    Matthias

    --
    Rosen sind rot.
    1. leider sind in diesen Beispielen keine Verbindungspfeile

      welche die Personen Verknüpfen.

  2. So, habe nun einen Menübaum über das "List-Item" erstellt.

    <ul>
    	<li  class=''>
    		<p>Person 1</p>
    	</li>
    	<li  class='container'>
    		<ul>
    			<li  class=''>
    				<p>Person 2</p>
    			</li>
    			<li  class=''>
    				<p>Person 3</p>
    			</li>
    		</ul>
    	</li>
    	<li  class=''>
    		<p>Person 4</p>
    	</li>
    	<li  class='container'>
    		<ul>
    			<li  class=''>
    				<p>Person 5</p>
    			</li>
    			<li  class='container'>
    				<ul>
    					<li  class=''>
    						<p>Person 6</p>
    					</li>
    					<li  class=''>
    						<p>Person 7</p>
    					</li>
    				</ul>
    			</li>
    		</ul>
    	</li>
    	<li  class=''>
    		<p>Person 8</p>
    	</li>
    </ul>
    

    ausgabe (Verbindungsstriche aus class='container' fehlen hier):

        Person 1
    
            Person 2
    
            Person 3
    
        Person 4
    
            Person 5
    
                Person 6
    
                Person 7
    
        Person 8
    

    Das ganze lasse ich aus dem Array auslesen:

    $arr = array('<p>Person 1</p>', array('<p>Person 2</p>', '<p>Person 3</p>'), '<p>Person 4</p>', array('<p>Person 5</p>', array('<p>Person 6</p>', '<p>Person 7</p>')), '<p>Person 8</p>');
    

    (Den code zum erstellen des Baumes lasse ich einmal aus)

    funktioniert sehr gut, allerdings müsste ich dieses verschachtelt aus einer SQL Datenbank auslesen. hat jemand eine Idee wie ich ein array mit den verschachtelten weiteren Arays erstelle? SQL Daten:

    #Tabelle = Personen
    #index: 1 Person: Person 1 Ueberperson: 0;
    #index: 2 Person: Person 2 Ueberperson: 1;
    #index: 3 Person: Person 3 Ueberperson: 1;
    #index: 4 Person: Person 4 Ueberperson: 0;
    #index: 5 Person: Person 5 Ueberperson: 4;
    #index: 6 Person: Person 6 Ueberperson: 5;
    #index: 7 Person: Person 7 Ueberperson: 5;
    #index: 8 Person: Person 8 Ueberperson: 0;
    
    
    1. Hallo Tschjensi,

      Entschuldige, ich habe dich vergessen:

      Unsere Postinglinien werden so erzeugt

      
      /* Posting-Linien */
      
      .root {
        ol {
      	  overflow: hidden;
        }
      
        ol header:before {
      	  content: '';
      	  font-size: 1.6px;
      	  font-size: 0rem;
      	  vertical-align: top;
      	  padding: 500% 1px 0;
      	  margin-right: 10px;
        }
      
        header {
      	  background: asset-data-url("posting-pfeil1.png") no-repeat left bottom;
        }
      
        article > header, & > header, article ol li:only-child > header, &.posting ol li:only-child > header {
          background:none;
        }
      
        ol li:last-child > header:before {
      	  background: asset-data-url("posting-linie.png") repeat-y left top;
        }
      
        ol li:first-child > header:before {
      	  background-image: none;
        }
      }
      /* end Posting-Linien */
      

      Bis demnächst
      Matthias

      --
      Rosen sind rot.
    2. Tach!

      allerdings müsste ich dieses [Array] verschachtelt aus einer SQL Datenbank auslesen. hat jemand eine Idee wie ich ein array mit den verschachtelten weiteren Arays erstelle?

      Wenn du es nicht in Einzelnteilen sondern nur als ganzes brauchst, speichere es als SLOB (serialized large object), sprich: als serialisiertes Array. Ansonsten gibt es noch andere Methoden wie Nested Sets oder die gute alte Verweis-auf-den-Vorgänger-Methode.

      dedlfix.

  3. Hi,

    Ich suche nach einen grafischen Menübaum um einen Stammbaum aus einer SQL Datenbank zu erzeugen.

    Das Problem dabei dürfte der Ahnenschwund (auch Ahnenverlust genannt) sein.

    Jeder hat 2 Eltern, 4 Großeltern, 8 Urgroßeltern, 16 2Urgroßeltern, … 2^n (n-2)Urgroßeltern.

    Für n=10 sind es 1024 8Urgroßeltern Für n=20 sind es 1048576 18Urgroßeltern Für n=33 sind es 8589934592 31Urgroßeltern. Also mehr als die aktuelle Weltbevölkerung.

    Und bekanntermaßen ist es ja so, daß es früher deutlich weniger Menschen gab als heute.

    Das funktioniert so also nicht - hier kommt der Ahnenschwund ins Spiel. Haben z.B. unter den Vorfahen z.B. mal Cousin und Cousine ein Kind gezeugt, hat dieses nur 6 statt 8 Urgroßeltern. 2 der Urgroßeltern des Kindes bzw. 2 der Großeltern von Cousin/Cousine fallen ja zusammen. Demnach auch 4 der 2Urgroßeltern bzw. 4 der Urgroßeltern von Cousin/Cousine usw.

                                      +- Urgroßeltern1
                                      |
                      +- Großeltern1 -+
                      |               |
          +- Cousin  -+               +- Urgroßeltern2
          |           |
          |           +- Großeltern2 -+- Urgroßeltern3
    Kind -+                           |
          |           +- Großeltern3 -+- Urgroßeltern4
          |           |
          +- Cousine -+               +- Urgroßeltern5
                      |               |
                      +- Großeltern4 -+
                                      |
                                      +- Urgroßeltern6
    

    Und das kriegst Du mit Deinen Listen von Listen von Listen nicht richtig abgebildet. Bzw. nur, wenn weite Teile des Baumes mehrfach auftauchen.

    cu,
    Andreas a/k/a MudGuard