[fotoscript]output foto’s

Pagina: 1
Acties:

  • InfoTracer
  • Registratie: November 2001
  • Laatst online: 30-11 21:07
Ik ben bezig met het maken van een fotogalerij script maar ik loop tegen een probleem aan waar jullie mij misschien mee kunnen helpen.

Ik zal eerst ff een id geven van mijn ontwerp.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Class
{
    Constructor()
{
    Settings zoals basedir(main dir waar foto in staan)
    Hoogte
    Breedte (voor het aantal weer te geven foto’s per pagina)
    Array met wat welke dir is (array(0 => "dir", 1 => "dir", 2 => "fotos", 3 => "foto"))
    _GET[] ophalen
}

Controle() (controle voor _GET[] input) Meerdere functies

Get() (niet de _GET[] maar om gegevens op te halen zoals dirpath, depth)

Maken() (deze gebruikt controle() en get() om de foto’s op te halen)
Deze maken is verdeelt in:
makeNavigatielinks(voor in welke dir je zit)
makeStructuur(voor de foto’s weer te geven)
makenPapes(voor de pagina nagegatie)

Show() (deze zorgt er voor dat de foto’s op het scherm komen)
Show heeft de zelfde functies om de foto’s te laten zien.
}


Nu heb ik de navigatie af alleen nu ben ik bij de foto’s weergeven aangekomen en loop ik tegen een probleem aan.

De foto’s kunnen op 3 manieren worden weer gegeven. Dat wordt bepaald door de array in de constructor en die kan ook verandere.
Dir = waar alleen mappen in staan
Fotos = waar de foto’s in staan
Foto = alleen 1 foto
Dit wordt bepaald door via getdept die zijn gegevens uit de array haalt en via _GET[] binnen krijgt.

Dus nu is het probleem hoe geeft ik die foto’s netjes weer.

Bij navigatie heb ik het op de volgende manier gedaan.
PHP:
1
2
3
4
5
6
        $array = FotoGalerij::makeNavigatieLinks();

        foreach($array as $inarray)
        {
            ?><A HREF="<?=$_SERVER['PHP_SELF']."?dir=".$inarray['dir']?>"><?=$inarray['name']?></A> <?
        }


Hier kan dus zelf ook makkelijk iets aan veranderd worden dus de opmaak bedoel ik dan.
De foto’s moeten dus worden weer gegeven aan de hand van de hoogte en breedte dus bijvoorbeeld 3 bij 3.
Dus nu heb ik de dirs en de fotos in een 2d array op gedeeld.
Zie hieronder:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Array
(
    [0] => Array
        (
            [0] => fotodir/serie/a/Copy (10) of nina sep-oct 020.jpg
            [1] => fotodir/serie/a/Copy (11) of nina sep-oct 020.jpg
            [2] => fotodir/serie/a/Copy (12) of nina sep-oct 020.jpg
        )

    [1] => Array
        (
            [3] => fotodir/serie/a/Copy (13) of nina sep-oct 020.jpg
            [4] => fotodir/serie/a/Copy (14) of nina sep-oct 020.jpg
            [5] => fotodir/serie/a/Copy (2) of nina sep-oct 020.jpg
        )

    [2] => Array
        (
            [6] => fotodir/serie/a/Copy (3) of nina sep-oct 020.jpg
            [7] => fotodir/serie/a/Copy (4) of nina sep-oct 020.jpg
            [8] => fotodir/serie/a/Copy (5) of nina sep-oct 020.jpg
        )

)

Nu wou ik dus dan bijvoorbeeld doormiddel van een foreach in een foreach de foto’s weergeven.
Alleen dit kan natuurlijk niet bij dir en bij foto.

Nu wil ik het wel zo laten dat je makkelijk de layout nog kan aanpassen in de code net zoals bij navigatielinks.

Bij makestructuur gebruik ik een switch om te bepalen hoe het gemaakt moet worden dus
Dir
Fotos
Foto
Maar dit vind ik niet mooi om het te gebruiken bij showStrcutuur.

Heeft iemand een id voor een mooiere oplossing.

Ik hoop dat het een beetje duidelijk is.