Anzeige

Dynamische Gallerie mit PHP Prob.

Dynamische Gallerie mit PHP Prob. | PSD-Tutorials.de

Erstellt von Denniz, 28.11.2006.

  1. Denniz

    Denniz Aktives Mitglied

    Dabei seit:
    24.03.2006
    Beiträge:
    286
    Geschlecht:
    männlich
    Software:
    Flash8, Eclipse/FDT
    Dynamische Gallerie mit PHP Prob.
    Hi LEute,
    ich will eine einfache dynamische Gallerie bauen.
    Dabei habe ich ein HTML grundgerüst in dem ein rechter sowie linker Pfeil ist mit dem man
    die Galleriepics wechseln kann. DIe Pics werden dann dynamisch in das gleiche dokument geladen.
    Klappt auch alles.
    Hab jeztz nur ein Prob. und zwar wenn ich die Gallerie HTML starte dann wird nicht das Pic1.jpg zuerst geladen sondern Pic3.jpg.
    Liegt warhrscheinlich an der eingesetzten while Schleife.
    Vieleicht weiß jemand was ich machen muß damit er mir zuerst die pic1.jpg öffnet und ich dann weiterhin ganz normal navigieren kann.

    Meine PHP:
    [php:1:d67c086b82]<body>
    <?
    if ($nr==0 ){
    $nr=1;
    while (file_exists("pic".$nr.".jpg")){
    $nr+=1;
    }
    $nr-=1;
    }
    if (!$nr) {$nr=1;}
    if (!file_exists("pic".$nr.".jpg")){$nr=1;}
    ?>
    <table width="300" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td colspan="3">[​IMG]</td>
    </tr>
    <tr>
    <td>[​IMG]</td>
    <td>&</td>
    <td><div align="right">[​IMG]</div></td>
    </tr>
    </table>
    </body>[/php:1:d67c086b82]

    Zum testen hab ich das teil mal hochgeladen:

    http://schrottplatz.pytalhost.com/phpgal.rar

    Beste GRüße
    -denniz
     
    #1      
  2. CIX88

    CIX88 Aktives Mitglied

    Dabei seit:
    06.04.2006
    Beiträge:
    814
    Geschlecht:
    männlich
    Ort:
    GR
    Dynamische Gallerie mit PHP Prob.
    hmmm => Galerie oder Gallery

    Zum Problem:

    Wo kommen denn die Daten überhaupt her ?
    Dann müsstest du die Daten vorher sortieren.

    PS:
    Mit dem RAR-Link kann ich im Moment nichts anfangen.
     
    #2      
  3. r3nt5ch3r

    r3nt5ch3r ~ Allround pG ~

    Dabei seit:
    10.03.2006
    Beiträge:
    1.836
    Geschlecht:
    männlich
    Dynamische Gallerie mit PHP Prob.
    Code (Text):
    1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    2. <html>
    3. <head>
    4. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    5. <title>Unbenanntes Dokument</title>
    6. </head>
    7. <body>
    8. <?
    9. $nr = $_GET['nr'];
    10. if(empty($nr)){$nr=1;}
    11. $vor = $nr;
    12. $zurueck = $nr;
    13. $vor++;
    14. $zurueck--;
    15. ?>
    16. <table width="300" border="0" cellspacing="0" cellpadding="0">
    17.   <tr>
    18.     <td colspan="3">[img]pic<? echo $nr;?>.jpg[/img]</td>
    19.   </tr>
    20.   <tr>
    21.     <td><? if(file_exists("pic".$zurueck.".jpg")){ ?>[url="?nr=<? echo $zurueck;?>"][img]arrow_left.jpg[/img][/url]<? } ?></td>
    22.     <td>&</td>
    23.     <td>
    24.     <? if(file_exists("pic".$vor.".jpg")){ ?><div align="right">[url="?nr=<? echo $vor;?>"][img]arrow_right.jpg[/img][/url]</div><? } ?></td>
    25.   </tr>
    26. </table>
    27. </body>
    28. </html>
    29.  
    so irgendwie würd ichs machen^^

    aus nem ordner?

    sin sortiert nach zahlen

    hmm -.-

    ich weiß gar net was du da mit der schleife rummachst^^
    ich hab au 2 überprüfungen reingemacht, die testen ob das bild auf das der pfeil verweist überhaupt da ist. um nicht so viel chaos zu erzeugen hab ich 2 neue variablen gemacht^^

    ps: gewöhn dir sauberes coden an^^ (ich hab es zwar au nich sauberer gemacht, weil ich sonst alles neu gebaut hätte^^)
     
    #3      
  4. Denniz

    Denniz Aktives Mitglied

    Dabei seit:
    24.03.2006
    Beiträge:
    286
    Geschlecht:
    männlich
    Software:
    Flash8, Eclipse/FDT
    Dynamische Gallerie mit PHP Prob.
    Hi r3nt5ch3r ,

    also irgendie hab ich die syntax grad zerhauen.
    Naja egal, wollte es zwar so haben das er mir die galerie in der endloschleife anzeigt.Also
    wenn man bei pic1 ist und zurück klickt soll dann das letzte pic angezeigt werden.
    Deine Variante ist aber auch ganz cool.

    Ok besten dank.

    :razz:
     
    #4      
  5. r3nt5ch3r

    r3nt5ch3r ~ Allround pG ~

    Dabei seit:
    10.03.2006
    Beiträge:
    1.836
    Geschlecht:
    männlich
    Dynamische Gallerie mit PHP Prob.
    macht er doch^^

    un zwar nur wenn es das bild auch gibt^^
     
    #5      
  6. CIX88

    CIX88 Aktives Mitglied

    Dabei seit:
    06.04.2006
    Beiträge:
    814
    Geschlecht:
    männlich
    Ort:
    GR
    Dynamische Gallerie mit PHP Prob.
    Ich würden den Ordner (klar, wo die Bilder liegen) auslesen.
    z.B. mit glob() oder opendir() etc..
    Dann liegen die Daten als Array vor, was man dann mit natsort() ?natürlich? sortieren kann.

    Beim Auslesen brauch man nur noch auf den Inhalt vom Array zugreiffen - fertig.

    EDIT:

    Und dazu ein sehr sehr einfaches Beispiel:
    http://www.cix88.de/cix_php/php_web/cix_einfache_weiterschaltung.php

    Jedoch würde ich mir auch gedanken machen, später das alles über eine Datenbank abzuwickeln, wird sicher früher oder später auch werden.
    Aber wenn es reichlich Bilder sind führen die oben genanten Methoden zu Performance Problemen.
     
    #6      
  7. Schrottie

    Schrottie Schrottie

    Dabei seit:
    06.08.2006
    Beiträge:
    58
    Geschlecht:
    männlich
    Ort:
    Dortmund
    Software:
    -
    Kameratyp:
    -
    Dynamische Gallerie mit PHP Prob.
    Hier ein kleines Script was dir den Inhalt des Ordners speichert aber nur wenn es ein Bild ist.
    in $anzahl_bilder findest du dann die Bilderanzahl. Damit aknnst du eine For-Schleife füttern oder was auch immer.


    [php:1:ad2e7ad083]<?php

    $galerie_pfad = "";
    $verzeichnis = opendir($galerie_pfad);
    $eintrag = readdir($verzeichnis);

    while($eintrag)
    {
    $path_parts = pathinfo($eintrag);

    switch($path_parts["extension"])
    {
    case "jpg": $galerie_bilder[] = $eintrag;
    break;
    case "bmp": $galerie_bilder[] = $eintrag;
    break;
    case "gif": $galerie_bilder[] = $eintrag;
    break;
    case "jpe": $galerie_bilder[] = $eintrag;
    break;
    case "jpeg": $galerie_bilder[] = $eintrag;
    break;
    case "png": $galerie_bilder[] = $eintrag;
    break;
    }
    $eintrag = readdir($verzeichnis);
    }

    $anzahl_bilder = count($galerie_bilder);

    ?>[/php:1:ad2e7ad083][/php]
     
    #7      
x
×
×