Moin Jens,
ja, das mit der Nummerierung ist wirklich ein eine gute Lösung. Ehrlich gesagt, weiß ich gar nicht mehr, warum ich da nicht weitergekommen bin. Ich hatte da wohl eine etwas größere Denkblockade.
Jetzt war ich gerade dabei die Idee in die Tat umzusetzen und merke: Logischer Denkfehler (zumindest bei mir, keine Ahnung, ob du das bedacht hast). Wenn ich mich in der ersten Ebene befinde, ist noch alles gut. Per Klick habe ich die ID: level_001&folder_[...]. Nun bin ich also im Unterordner und habe alles geladen. Ab dort geht es aber schwer weiter, denn um das entsprechende David-Archiv auszulesen, muss ich alle vorherigen IDs behalten. Aus denen müsste ich den folder_ Wert auslesen und kann mir dann daraus den rekonstruieren in welchem Ordner ich mich eigentlich befinde. Hm.. kann man natürlich realisieren, aber ich finde es etwas umständlich. Diese Idee hat übrigens auch einen Bug*.
Deshalb habe ich mir gedacht die Ebenen auszulassen (da sie mir im Prinzip gar nicht helfen.) Die Idee war also die Namen der Archive bzw. Nummerierung zu verwenden und eine Schlange daraus zu bauen. Nach einhundert Unterebenen ( //ich muss ja auch auf die Extremfälle vorbereitet sein) bildet sich aber eine riesige Schlange und macht den Quellcode unansehnlich. Es ist vorallem eine extra Funktion nötig, um die Archive auszulesen und es würde wahrscheinlich extrem lange dauern, da die API nun nicht gerade schnell ist (Musste ich leider daran feststellen, dass die rekursive Funktion, die die Ordnerstruktur auslesen sollte, fast anderthalb Minuten brauchte). Auch diese Idee enthält den Bug*.
Die nächste Idee war also direkt die ID zu nehmen, die David mir sagt. Das werde ich jetzt auch tun, da es simpel ist und der Bug nicht auftritt.
Wenn jemand die Webseite benutzt und während dieser Zeitspanne eine andere Person einen Ordner im Root erstellt, ist die Nummerierung nach dem erstellten Ordner nicht richtig und ich will nicht wissen, was dann alles falsch angezeigt werden kann. Dann hilft nur noch ein Reload der Seite und solch eine schl*mpige Programmierung (Das soll niemand persönlich nehmen!) möchte ich mir nicht angewöhnen.
Mfg, Lev
ps. Ich melde mich, wenn alles gut gelaufen ist. Natürlich auch, wenn ich Hilfe brauche :D.