zufallsbilder

Diskutiere das Thema zufallsbilder im Forum Web-Design.

  1. netp

    netp Thread Starter Mitglied

    Beiträge:
    32
    Zustimmungen:
    0
    Mitglied seit:
    28.01.2005
    hi,

    ich möchte gern eine bilderleiste mit 6 bildern nebeneinander darstellen. das besondere soll sein, das die bilder im zufallsprinzip dargestellt werden. jedes mal wenn jemand auf die seite geht, werden 6 bilder aus einem ordner "leisten_bilder" gezogen und dargestellt.

    hat jemand von euch schon mal soetwas geschrieben oder eine ahnung, wie soetwas zu scheiben ist? ich würde mich sehr über eure hilfe freuen.

    danke
    netp
     
  2. PowerBookGrafik

    PowerBookGrafik Mitglied

    Beiträge:
    814
    Zustimmungen:
    5
    Mitglied seit:
    12.03.2005
    kannst du PHP verwenden ?
     
  3. netp

    netp Thread Starter Mitglied

    Beiträge:
    32
    Zustimmungen:
    0
    Mitglied seit:
    28.01.2005
    ja, kann ich. ich habe alle möglichkeiten.
    ich möchte aber versuchen keine datenbank zu verwenden ....
     
  4. PowerBookGrafik

    PowerBookGrafik Mitglied

    Beiträge:
    814
    Zustimmungen:
    5
    Mitglied seit:
    12.03.2005
    PHP:
    <?php 
    $ordner    
    =     "./images/";
    $i         =     0;
    $i2         =     0;
    $action=opendir($ordner); 

    while(
    $datei=readdir($action)){ 
        if(!
    preg_match("!(\.|\..|\.DS_Store)$!"$datei)){ 
            
    $i++;
        }
    }
    $allimg$i;

    $rand1 rand(0,$allimg);
    $rand2 rand(0,$allimg);
    $rand3 rand(0,$allimg);
    $rand4 rand(0,$allimg);
    $rand5 rand(0,$allimg);
    $rand6 rand(0,$allimg);

    $action2=opendir($ordner); 

    while(
    $datei2=readdir($action2)){ 
        if(!
    preg_match("!(\.|\..|\.DS_Store)$!"$datei2)){ 
            if(
    $i2 == $rand1 || $i2 == $rand2 || $i2 == $rand3 || $i2 == $rand4 || $i2 == $rand5 || $i2 == $rand6){
                echo 
    "<img src=\"$ordner/$datei2\">";

            }
            
    $i2++;
        }
    }


    ?>

    pfuscherei ... aber funktioniert ... versuch morgen noch was gscheiteres
     
  5. msslovi0

    msslovi0 Mitglied

    Beiträge:
    2.727
    Zustimmungen:
    115
    Mitglied seit:
    20.03.2005
    Ja, das geht übersichtlicher, aber der Weg ist schon der richtige.

    Preliminaries:
    Wir gehen mal davon aus das wir einen Ordner haben in dem 25 Bilder drin liegen. Die sind durchnummeriert (1.jpg, 2.jpg, 3.jpg, ..., 25.jpg).

    Ziel ist es jetzt also, 6 zufällige Zahlen aus dem Bereich 1 bis 25 auszuwählen, ohne das eine Zahl doppelt vorkommt:
    PHP:
    <?php
    function generate_numbers($min$max$anz)
    {
         
    $array range($min$max);
         
    srand ((double)microtime()*1000000);
         for(
    $x 0$x $anz$x++)
         {
              
    $i rand(1count($array))-1;
              
    $res[] = $array[$i];
              
    array_splice($array$i1);
         }
         return 
    $res;
    }

    // 6 eindeutige Zahlen im Bereich von 1 bis 25 ermitteln
    $random generate_numbers(1256);

    ?>
    Um das ganze jetzt auszugeben, einfach über $random iterieren:
    PHP:
    <?php
      
    for($i=0;$i<sizeof($random);$i++) {
        
    printf("<img src='/img/%s.jpg' alt='' />"$random[$i]);
      }
    ?>
    Matt
     
  6. netp

    netp Thread Starter Mitglied

    Beiträge:
    32
    Zustimmungen:
    0
    Mitglied seit:
    28.01.2005
    vielen Dank für eure mühe. leider bin ich nicht so der php fachmann. wie binde ich das skript jetzt in die html-datei ein. die bilder liegen bis jetzt noch in einem tabellenrahmen, schön nebeneinander.
    ---
    <table width="400" border="0">
    <tr>
    <th scope="col"><img src="file:///././././bild_1.jpg" width="80" height="80" /></th>
    <th scope="col"><img src="file:///././././bild_2.jpg" width="80" height="80" /></th>
    <th scope="col"><img src="file:///././././bild_3.jpg" width="80" height="80" /></th>
    <th scope="col"><img src="file:///././././bild_4.jpg" width="80" height="80" /></th>
    <th scope="col"><img src="file:///././././bild_5.jpg" width="80" height="80" /></th>
    <th scope="col"><img src="file:///././././bild_6.jpg" width="80" height="80" /></th>
    </tr>
    </table>
    ---
    vielen dank im vorraus für die antworten
    lg
    netp
     
  7. PowerBookGrafik

    PowerBookGrafik Mitglied

    Beiträge:
    814
    Zustimmungen:
    5
    Mitglied seit:
    12.03.2005
    du nimmst das script von ihm und baust das dann so in deine tabelle ein :

    HTML:
    <table width="400" border="0">
    <tr>
    <?php 
      for($i=0;$i<sizeof($random);$++) { 
        printf("<th scope="col"><img src="/img/%s.jpg" alt="" /></th>", $random[$i]); 
      } 
    ?>
    </tr>
    </table>
    
     
  8. msslovi0

    msslovi0 Mitglied

    Beiträge:
    2.727
    Zustimmungen:
    115
    Mitglied seit:
    20.03.2005
    Ich hab mal eben noch den Fehler aus meinem obigen Beispiel rausgenommen (die " innerhalb des printf würden zum parse error führen).
    HTML:
    <table width="400" border="0">
    <tr>
    <?php 
      for($i=0;$i<sizeof($random);$i++) { 
        printf("<th scope='col'><img src='/img/%s.jpg' alt='' /></th>", $random[$i]); 
      } 
    ?>
    </tr>
    </table>
    Für was du aber für das horizontale Platzieren von Bildern eine Tabelle brauchst ist mir absolut schleierhaft...

    Matt
     
  9. cym

    cym Mitglied

    Beiträge:
    1.382
    Zustimmungen:
    9
    Mitglied seit:
    03.05.2004
    Relativ wichtig ist noch, dass Du deine HTMl-Dateiendung (.htm, .html) nach .php unbenennst. Sonst funktioniert nichts. :)
     
  10. PowerBookGrafik

    PowerBookGrafik Mitglied

    Beiträge:
    814
    Zustimmungen:
    5
    Mitglied seit:
    12.03.2005
    msslovi0 ohne PHP auto formatierung highligting ... überseh ich sowas imma
     
  11. msslovi0

    msslovi0 Mitglied

    Beiträge:
    2.727
    Zustimmungen:
    115
    Mitglied seit:
    20.03.2005
    Ja, das ging mir ähnlich. ein $i hatte ich auch noch vergessen ;-)

    Matt
     
  12. netp

    netp Thread Starter Mitglied

    Beiträge:
    32
    Zustimmungen:
    0
    Mitglied seit:
    28.01.2005
    danke danke, sehr nett von euch.
    die seite ist im tabellenlayout erstellt und die bilder sind mittels der tabelle im oberen teil eingepasst -> daher die tabelle.

    lg
    alex
     

MacUser.de weiterempfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Akzeptieren Weitere Informationen...