PHP Schleife mit Bildern Minimieren / Maximieren

Eurocid

Mitglied
Hallo Leute

Ich habe wiedermal ein delikates Problem. Ich habe mich heute schon mit Java Script und Jquery
obwohl ich mich mit beidem nicht so gut auskennen befasst.
Bin eher auf PHP und/oder CSS eingeschossen.

Folgendes möchte ich realisieren:

Ich habe mir eine For-Schleife gebastelt die mir aus einem Ordner alle unter Ordner ausgibt und
unter jedem ausgegebenen Unterordner (der nur die Überschrift dient) werden wieder über
eine For-Schleife alle Fotos aufgelistet (als Miniatur Foto 30x30px).

Beispiel:

+ Ordner A
- Foto
- Foto
- usw...
+ Ordner B
- Foto
- Foto
- usw...

Hier meine Frage:

Was kann ich da am besten nehme, wenn ich auf das + Drücken will, und sich die Fotos
ausblenden sollen.
Mit einem einzelnen Objekt ist das kein Problem aber wie bau ich das in die Schleife dann ein?

Kann mir da wer einen denkanstoß geben.

Grüße Cid
 
In solchen Fällen bieten sich immer Listen an:
HTML:
<ul>
  <li>
    <a href="#">+</a> Ordner A
    <ul>
      <li>Foto 1</li>
      <li>Foto 2</li>
    </ul>
  </li>
  <li>
    <a href="#">+</a> Ordner B
    <ul>
      <li>Foto 1</li>
      <li>Foto 2</li>
    </ul>
  </li>
</ul>
Jetzt kannst du auf die Anker zugreifen und das CLICK-Ereignis überwachen. Je nachdem, wie der Wert ist, den der Anker hat, blendest du eben die folgende Unterliste ein oder aus.
 
Hallo

Also ich habe die "Liste" selbst mit DIVs gemacht, was ja normalerweise nicht das problem sein sollte. Wo ich nicht genau weis was ich machen soll ist, dass die <a href>´s automatisch von der Schleife erzeugt werden somit habe ich eine Variable als Wert, für den Anker z.B., welchen Wert könnte ich da als Variable geben und wie kann ich den dann am besten auswerten ?
 
Um das Beispiel von crack aufzugreifen:
HTML:
<ul>
  <li>
    <a href="#" id="dir_A">+</a> Ordner A
    <ul id="ul_dir_A">
      <li>Foto 1</li>
      <li>Foto 2</li>
    </ul>
  </li>
  <li>
    <a href="#" id="dir_B">+</a> Ordner B
    <ul id="ul_dir_B">
      <li>Foto 1</li>
      <li>Foto 2</li>
    </ul>
  </li>
</ul>

Nebenbei erzeugst du dann einfach einen javascript/jQuery-Code:
HTML:
<script type="text/javascript">
$("#dir_A").click(function()  {
    $("#ul_dir_A").toggle();
});
$("#dir_B").click(function()  {
    $("#ul_dir_B").toggle();
});
</script>

Den jQuery-Code würde ich parallel in eine Variable speichern und erst am Ende gesammelt ausgeben.

lg Lime

PS: document_ready nicht vergessen...
 
Danke Leute für die Mühe

Ich habe es ohne irgendwelche JavaScripte gemacht, da bin ich noch zu schwach. :(

Habe es mit PHP gemacht, habe in die a href einen On/Off Switch eingebaut und auch den anzuzeigenden Ordner mitgeschickt. Danach wird die For-Schleife erst durch betätigung des Links ausgegeben.

Hier ein Teil des Codes, sollte jemand den ganzen einsehen wollen, schreibt mir einfach, da hängt noch einiges mehr daneben. Dass würde aber zu unübersichtlich werden, wenn ich hier alles reinkopiere. :)

PHP:
switch($_GET['view'])
        {
            case 'on' :
            for ($i = 0; $i < $count_jpg; $i++)
            {
                $u = $i + 1;
                if($_GET['gallery'] == $ort[0])
                {
                echo "<div class='pics'><a href='../uploads/gallery/$ordnername[$o]/$ort[0] ($u).JPG' rel='lightbox[roadtrip]' title=''>
                <img src='../uploads/gallery/$ordnername[$o]/$ort[0]_k ($u).JPG' width='65' height='50' alt='' style='border:black solid 1px;'/></a></div>";
                }
            }
            break;
            default:
        }

Trotz Danke nochmal für die Denkanstöße

Grüße Cid
 
Deine Variante ist zwar nicht schlecht, aber halt auch nicht wirklich dynamisch. Die Seite wird jedes mal neu geladen. Aber wenn dich das nicht stört, ist das vermutlich die beste Variante.
 
Ja meine ganzen Seiten sind "NOCH" nicht dynamisch. :)

Hab ziehmlich alles mittels PHP neuaufbauen lassen. Gibt es da ein Problem das ich beachten sollte ?
Oder gehts hier nur um die Geschwindigkeit ?
 
Naja, wenn du ne weiße Seite mit schwarzem Text hast, wo nur die Ordnerstruktur angezeigt wird, gehts kaum um Geschwindigkeit. Eher um Ästhetik, weil es "nicht modern" ist, wenn die Seite wegen einem "Ordnerinhalt anzeigen" refreshed wird. :)
Es gibt dafür auch sicher schon fertige Skripts im Internet, muss man nur mal suchen. Sonst mein Beispiel ist wirklich einfach gehalten und sollte durchaus funktionieren.
 
Zurück