NetObserver Studie
-

Willkommen im TP Hilfe Forum unter Traum-Projekt.com

Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen und Fragen stellen, privat mit anderen TPlern kommunizieren, an Umfragen teilnehmen und gratis Fotos runterladen. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Wir würden uns freuen, Dich in einer der freundlichsten Communitys als Mitglied begrüßen zu dürfen. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support Team.

Viel Spaß bei Traum-Projekt.com



Antwort
 
LinkBack (4) Themen-Optionen Thema durchsuchen
Alt 21.12.2007, 11:43   #61
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo macht sich hier sehr viel Mühe
Zitat:
Zitat von Postaria Beitrag anzeigen
... nur leider gibt es hier so wie es aussieht einen kleinen gedanken stop ... :/
niemals! nur leider kreisen meine gedanken auch um andere dinge und es gibt kunden, die vor dem jahreswechsel noch was reissen wollen. und dann scheint das os in meinem koerper kein linux zu sein ... zumindest hatte ich mir auch noch einen gemeinen virus eingefangen.

was das update angeht, so hab ich dafuer noch keine massenkompatible version an der hand. ich hab eine variante geschrieben, die erstmal nur das frontend betrifft. die wiederum ist an eine php-klasse gekoppelt und daher nicht so besonders fuer einen workshop geeignet. die leute wollen hier was lernen und darum will ich sie nicht verwirren.
die admin ist noch in den kinderschuhen. wenn ich ueber die feiertage etwas zeit habe, dann werde ich mir die sache noch mal in ruhe anschauen. vielleicht kann ich eine version schreiben, die den wuenschen und hoffnungen hier im board einigermassen gerecht wird.


schoene feiertage erstmal fuer euch alle hier im workshop!
hardy
__________________
/b{2}|[^(bb)]/

[Workshop] Nested sets
gutes webdesign
theo ist offline   Mit Zitat antworten
Linktipp

Alt 01.03.2008, 10:41   #62
TP-Greis
 
Benutzerbild von Boris
 
Registriert seit: Mar 2001
Ort: Berlin, Germany
Boris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKE
Mal zum Workshop ... wo sind denn die Abbildungen?
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris
Boris ist offline   Mit Zitat antworten
Alt 01.03.2008, 11:40   #63
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo macht sich hier sehr viel Mühe
danke fuer den hinweis boris! mein fehler. warum auch immer ... was auch immer mich geritten hat ... ich hab den ordner auf dem server umbenannt.

alles wieder i.o.
__________________
/b{2}|[^(bb)]/

[Workshop] Nested sets
gutes webdesign
theo ist offline   Mit Zitat antworten
Alt 24.04.2008, 12:12   #64
TP-Senior
 
Benutzerbild von Schneemann
 
Registriert seit: Jan 2006
Schneemann macht alles soweit korrekt
Wie kann ich bei einem größeren Baum z.B. 3 beliebige Knoten aufgeklappt halten während andere zu bleiben?

Ich will damit einen Baum wie beim Windows Explorer machen, der soll dann an den Knotenpunkten auf- und zuklappbar sein. Wenn man auf eine Seite wechselt soll sich aber nicht der gesamte Baum zuklappen, sondern an bestimmten Stellen aufgeklappt bleiben.

Wie geht das?
__________________
Gruß,
Peter
Schneemann ist offline   Mit Zitat antworten
Alt 24.04.2008, 12:19   #65
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo macht sich hier sehr viel Mühe
hi peter,

da alles, was mit dem ein- und ausklappen im baum zu tun hat, ueber javascript laeuft, ist die loesung auch da zu suchen. das js sorgt dafuer, dass beim klicken auf einen anderen knoten alle anderen eingeklappt werden. deaktiviere einfache diese funktion und du solltest zu deinem gewuenschten ergebnis kommen.


gruss,
hartmut
__________________
/b{2}|[^(bb)]/

[Workshop] Nested sets
gutes webdesign
theo ist offline   Mit Zitat antworten
Alt 24.04.2008, 13:36   #66
TP-Senior
 
Benutzerbild von Schneemann
 
Registriert seit: Jan 2006
Schneemann macht alles soweit korrekt
Wieso muss das per JavaScript erfolgen? Ich will das mit einem Reload der Seite machen, also Serverseitig.

Der aktuelle Zustand soll in der Session gespeichert werden, beim Aufruf der neuen Seite lese ich das dann aus.

Es geht mir um das Problem, einen Baum mit 3 verschiedenen offenen Knoten darzustellen.
__________________
Gruß,
Peter
Schneemann ist offline   Mit Zitat antworten
Alt 24.04.2008, 13:48   #67
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo macht sich hier sehr viel Mühe
so richtig habe ich dein vorhaben noch nicht verstanden ... das muss ich zugeben.
aber wenn du die sachen eh serverseitig regeln willst, dann wird js eh sinnlos, denn ein realod wuerde die seite in ihren urzustand versetzen.
wenn du die oeffnung verschiedener knoten per php realisieren willst, so musst du das auch mit dessen mitteln arbeiten. da bleibt nur ein get-request, was sicher fuer die steuerung verschiedener geoeffneter und geschlossener knoten ein wenig ueberlegung vorm coden voraussetzt.
auf js wuerde ich in dem falle dann ganz verzichten ...
__________________
/b{2}|[^(bb)]/

[Workshop] Nested sets
gutes webdesign
theo ist offline   Mit Zitat antworten
Alt 24.04.2008, 14:23   #68
TP-Insider
 
Benutzerbild von Cybergreek
 
Registriert seit: Nov 2005
Ort: Köln
Cybergreek hilft, wo's gehtCybergreek hilft, wo's gehtCybergreek hilft, wo's geht
Zitat:
Zitat von theo Beitrag anzeigen
...auf js wuerde ich in dem falle dann ganz verzichten ...
Dann musst Du erstmal Dich selbst überzeugen, weil Du JS ins Spiel gebracht hast

Ich denke mit reload ist gemeint, dass man auf einen (geschlossenen) Knoten klickt und die Seite wird neu geladen, wobei dieser Knoten aber zusätzlich zu den anderen aufgeklappt ist.
__________________
Grüße vom Griechen,
Cybergreek!

WikiDict.de - Das Wiki-Wörterbuch
Cybergreek ist gerade online   Mit Zitat antworten
Alt 24.04.2008, 14:31   #69
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo macht sich hier sehr viel Mühe
Zitat:
Zitat von Cybergreek Beitrag anzeigen
Dann musst Du erstmal Dich selbst überzeugen, weil Du JS ins Spiel gebracht hast
... das stimmt nicht ... jan wars!!! ... weil zu der zeit hardy.jsAhnung == null

wenn deine vermutung richtig ist, dann wuerde es die sache schwer vereinfachen, denn er braeuchte nur die id des angeklickten knotens per get uebergeben werden. was aber, wenn er wirklich mehrere knoten nacheinander oeffnen will? dann muesste sich das script die vorher geklickten "irgendwie merken" ...
__________________
/b{2}|[^(bb)]/

[Workshop] Nested sets
gutes webdesign
theo ist offline   Mit Zitat antworten
Alt 24.04.2008, 14:45   #70
TP-Senior
 
Benutzerbild von Schneemann
 
Registriert seit: Jan 2006
Schneemann macht alles soweit korrekt
Ich würde gerne (z.B. durch speichern aller offenen Knoten in einer kommaseparierten Zeichenkette in der PHP-Session) verschiedene Knoten öffnen.

Man soll also nicht bei jedem Klick den Baum neu aufklappen müssen.
Miniaturansicht angehängter Grafiken
workshop-nested-sets-tree1.jpg  
__________________
Gruß,
Peter
Schneemann ist offline   Mit Zitat antworten
Alt 24.04.2008, 15:04   #71
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo macht sich hier sehr viel Mühe
ich hab's geahnt ... puh ... !

also da muesste ich auch erstmal ne weile drueber gruebeln, wie man die sache am besten loest ...
aber mit der session duerftest du schon einen guten ansatz haben. jeder knoten hat ja per definition eine eigene id. die sollte auch ohne weiteres in einer session abgelegt werden koennen. eine regelung muesstest du dir dann einfallen lassen, wie du sie bei nochmaligem klicken wieder entfernst.
prinzipiell sieht es nach einer aufgabe fuer php und css aus. zu beginn muessten alle knoten unter der ersten ebene einen display=none bekommen. ein klick auf den knoten muesste den style von none auf block aendern.
bliebe nur noch die frage, wie man das am geschicktesten loest. eine eigenstaendige css-datei faellt fuer diese aufgabe sicher flach, wenn du den baum dynamisch halten willst. sonst muesstest du nach jeder aenderung in der db die css anpassen. andererseits bekommst du bei einer komplett dynamischen loesung keinen besonders sauberen html-code. aber eine andere loesung sehe ich auf die schnelle nicht.

wenn du eine loesung hast, dann wuerde mich das ergebnis interessieren ... und sicher einige andere hier auch. vielleicht lohnt sich auch das nachdenken ueber eine variante, in der man per vererbung eine css-datei fuer alle ebenen anlegen und deren status per aenderung von klassennamen loesen kann. fuer die anzeige immer jeweils eines zweiges sollte das problemlos moeglich sein.
__________________
/b{2}|[^(bb)]/

[Workshop] Nested sets
gutes webdesign
theo ist offline   Mit Zitat antworten
Alt 25.04.2008, 00:16   #72
TP-Senior
 
Benutzerbild von Schneemann
 
Registriert seit: Jan 2006
Schneemann macht alles soweit korrekt
Was haltet ihr von folgender Idee.

Den Baum als kompletten Array darstellen, Keys sind die IDs der jeweiligen Einträge. Die offenen Einträge hat man als ID-Kette in der Session. Per explode zerflückt man die Kette in ein Array. Nachdem man den Baum hat macht manvor der Ausgabe ein unset auf alle Keys die nicht in dem ID-Ketten-Array stehen.
__________________
Gruß,
Peter
Schneemann ist offline   Mit Zitat antworten
Alt 25.04.2008, 09:23   #73
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo macht sich hier sehr viel Mühe
also den vorschlag hab ich ehrlich gesagt auch nach mehrmaligem durchlesen nicht gerafft ...
aber machen wir mal ein simples bsp. danach sollte es vielleicht problemlos gelingen:
HTML-Code:
<ul>
    <li>ebene 1</li>
    <li><a href="">ebene 1</a></li>
    <ul id="ebene2_1" class="ebene2_hidden">
        <li>ebene 2</li>
        <li>ebene 2</li>
        <li><a href="">ebene 2</a></li>
        <ul id="ebene3_1" class="ebene3_hidden">
            <li>ebene 3</li>
            <li>ebene 3</li>
        </ul>
    </ul>
    <li>ebene 1</li>
</ul>
vergessen wir jetzt einfach mal das unsaubere html (die liste ohne css sieht sonst einfach bloed aus).
du musst noch nur bei den knoten eine moeglichkeit zum klicken anbieten, wo auch unterknoten vorhanden sind. diese sollten den naechst folgenden knoten bzw. den namen der untergeordneten liste kennen. ein klick und alle listenobjekte der verschachtelten liste werden angezeigt.
oeffnest du jetzt einen kompletten baum und klickst dann auf den knoten der ebene 1, so wird die darunter liegende liste ausgeblendet, was aber keine aenderung der folgelisten zur folge hat. erneutes klicken ... et voila ... der gesamte vorher geoeffnete baum ist wieder da.
noch ein wort zum css. du koenntest jetzt eine stylesheet.datei anlegen, in der ebenen bis zu einer gewissen tiefe als klassen in form von
Code:
.ebene1_hidden { display: none; }
.ebene1_show { display: block; }

.ebene2_hidden { display: none; }
.ebene2_show { display: block; }
....
vorbereitet sind. du braeuchtest dann nur noch die klassennamen wechseln und haettest somit ein sauberen html.code und volle kontrolle ueber die styles.

je laenger ich darueber nachdenke, desto einfacherer erscheint mir die loesung deines problems. selbst sessions werden so unnoetig.
__________________
/b{2}|[^(bb)]/

[Workshop] Nested sets
gutes webdesign
theo ist offline   Mit Zitat antworten
Alt 25.04.2008, 09:58   #74
TP-Greis
 
Benutzerbild von Boris
 
Registriert seit: Mar 2001
Ort: Berlin, Germany
Boris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKE
Die Liste funktioniert so nicht, weil das HTML falsch ist, bzw. die Liste falsch verschachtelt.

Man kann das nicht einfach "vergessen" oder sollte sich dann nicht wundern, wenn die Liste nicht korrekt dargestellt wird.
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris
Boris ist offline   Mit Zitat antworten
Alt 25.04.2008, 10:32   #75
TP-Senior
 
Benutzerbild von Schneemann
 
Registriert seit: Jan 2006
Schneemann macht alles soweit korrekt
Ich erkläre meine Idee nun mal optisch im Sinne des Windows Explorers mit Ordnern.

Wir brauchen einen Array mit den Ordneren. Jeder Ordner hat eine ID die als Array den Inhalt enthält.

Am Anfang hat unser Baum in Ebene 1 drei Ordner die sichtbar sein sollen. Wir wollen beim ersten Aufruf aber die Kinder nicht aufgeklappt haben, also schmeissen wir per unset() nach der Generierung des Array und vor der Ausgabe die "child"-Arrays raus.
Code:
Array = 
(
  [10] => Array
    (
      [id] => 10
      [name] => Tier
      [child] = Array
        (
          [70] => Array
            (
              [id] => 70
              [name] => Fisch
            )
          [80] => Array
            (
              [id] => 80
              [name] => Vogel
            )
        )
    )
  [20] => Array
    (
      [id] => 20
      [name] => Mensch
    )
  [30] => Array
    (
      [id] => 30
      [name] => Pflanze
      [child] = Array
        (
          [50] => Array
            (
              [id] => 50
              [name] => Blume
            )
          [60] => Array
            (
              [id] => 60
              [name] => Baum
            )
        )
    )
)
Der Array sollte dann so aussehen:
Code:
Array = 
(
  [10] => Array
    (
      [id] => 10
      [name] => Tier
    )
  [20] => Array
    (
      [id] => 20
      [name] => Mensch
    )
  [30] => Array
    (
      [id] => 30
      [name] => Pflanze
    )
)
Wollen wir nun einen Ordner aufklappen, geschieht das mit einem Klick auf ein Plus-Icon, hinterlegt ist die ID des Ordners. Wenn wir nun den Ordner "Tier" aufklappen, klicken wir also einen Link der die ID 10 in die Session speichert.

Es würde uns nun beim Seitenaufruf wieder den ganzen Baum auflisten, beim löschen der "Childs" per unset() geben wir aber an, dass dies nur dann der Fall sein soll, wenn ID != 10 ist. Also macht es den unset() für "child" nur wo das Child nicht in einem Array mit der ID 10 ist. Das sieht dann so aus:
Code:
Array = 
(
  [10] => Array
    (
      [id] => 10
      [name] => Tier
      [child] = Array
        (
          [70] => Array
            (
              [id] => 70
              [name] => Fisch
            )
          [80] => Array
            (
              [id] => 80
              [name] => Vogel
            )
        )
    )
  [20] => Array
    (
      [id] => 20
      [name] => Mensch
    )
  [30] => Array
    (
      [id] => 30
      [name] => Pflanze
    )
)
Klickt man dann ein Minus um den Ordner zuzuklappen, wird die ID 10 aus der session entfernt. Klickt man die ID 30 auf, stehen in der Session die IDs 10 und 30, der Baum würde dann voll aufklappen an 2 Knoten gleichzeitig.

Was meint ihr dazu, ist das so machbar? Wie lesen wir das SQL am besten aus, dass wir es in eine passende Array-Struktur bekommen?
__________________
Gruß,
Peter
Schneemann ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik > Workshops und Tutorials
[Workshop] Nested Sets [Workshop] Nested Sets
« [Workshop] Formmailer | [Workshop] TYPO3 - Extension Programmierung »

LinkBacks (?)
LinkBack to this Thread: http://www.traum-projekt.com/forum/73-workshops-und-tutorials/58359-workshop-nested-sets.html
Erstellt von For Type Datum
Nested Sets ? Wikipedia This thread Refback 23.03.2008 18:57
PHP script resource DYNAMISCHES MENÜ ->rekursive funktion -> hilfe This thread Refback 15.10.2007 11:34
Pop Out and Drop Down Menu mit MYSQL - Forum: phpforum.de This thread Refback 19.08.2007 21:47
e-techniker.info - Blog Archive - Baumstrukturen This thread Pingback 16.02.2007 18:38

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge anzufügen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are An


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:28 Uhr.

Powered by: vBulletin Version 3.6 (Deutsch)
Copyright ©2000 - 2007, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67