Zufallsbilder die 10.

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Zufallsbilder die 10.

    Also wir man jetzt dann vielleicht an dem Script erkennt, ist er zusammengebastelt wurden aus 2 verschiedenen Themen. Einmal Dateienanzahl in einem Ordner und dann Zufallsbilder.

    Sinn und Zweck:

    Es sollen ca. 6 Zufallsbilder geladen werden die dann als Link zu einer Gallery führen sollen. Um nicht immer den Script updaten zu müssen, soll der halt auslesen wieviele Dateien im Ordner drin san, um halt dann immer von den Dateien 6 rauszuholen.

    PHP-Code:
    <?php
    include("head.php");

    //Variablen f&uuml;rs Datenz&auml;hlen
    $filecount   0;
    $verzeichnis "./mein-pc/";
    $open_dir    opendir($verzeichnis);

    //z&auml;hlen
    while($filename readdir($open_dir))
     {
     if(
    $filename != "." && $filename != ".." && is_file($verzeichnis."/".$filename)) $filecount++;
     }
    closedir($open_dir);

    //Dateienpaare (die erste zeile is dann fürn endscript)
    #$daten = ceil($filecount / 3);
    $daten $filecount-1;

    //Variablen
    $pics = array();
    $min  1;

    while(
    count($pics) < 5)
     {
     
    $pic rand($min,$daten);
     if(!
    in_array($pic,$pics)) $pics[] = $pic;
     }
    foreach(
    $pics AS $picid);

    #echo $picid;

    #echo $picid[1];  # <-- weiß ned ob des so geht?!
    #echo $picid[2];
    #echo $picid[3];
    #echo $picid[4];
    #echo $picid[5];

     
    echo '<img src="'.$verzeichnis.'img-'.$picid.'.jpg">';
    include(
    "end.php");
    ?>
    so der soll die dateien jetzt aber nicht gleich ausgeben sondern in variablen speichern, damit ich sie dann nachher selber an die passenden stellen einfügen kann.

    naja jedenfalls so dann nachher der bilderlink so aussehen

    PHP-Code:
    echo '<a href="#" onClick="window.open(\'gallery.php?id='.$id.'\', \'Name\',\'toolbar=no,status=no,menubar=no,width=840,height=640\')"><img src="'.$verzeichnis.'img-'.$id.'.jpg</img></a>'

  • #2
    wie wärs denn mit: order by rand() LIMIT 6
    mfg
    marc75

    <Platz für anderes>

    Kommentar


    • #3
      @marc75
      putz mal deine glaskugel ... siehst du irgendwo ne mysql_query ?

      @enzio
      ich weiss ja nicht wie du das zuammengeklöppelt hast, aber tu's besser wech

      - liess die dateinamen aus dem ordner aus => opendir(), readdir()
      - pack die namen in ein array => array_push() (zB)
      - rüttel das array durch => shuffle()
      - gib 6 namen/links aus => for() + echo
      oder
      - weise die 6 dateien je einer variablen zu oder einem neuen array oder ...

      btw: bevor du rand() einsetzt, solltest du srand() bzw mt_srand() einsetzen
      Kissolino.com

      Kommentar


      • #4
        btw: bevor du rand() einsetzt, solltest du srand() bzw mt_srand() einsetzen
        ist afaik bei neueren versionen von php nicht mehr notwendig ...
        Die Zeit hat ihre Kinder längst gefressen

        Kommentar


        • #5
          Original geschrieben von derHund
          ist afaik bei neueren versionen von php nicht mehr notwendig ...
          OffTopic:
          ausrede: bleibe gerne abwärtskompatibel
          notiz an mich: öfter ins manual schauen.
          Kissolino.com

          Kommentar


          • #6
            Original geschrieben von Wurzel
            OffTopic:
            ausrede: bleibe gerne abwärtskompatibel
            notiz an mich: öfter ins manual schauen.
            OffTopic:
            habs auch nur letztens gelesen, weiß garnicht, wos steht ...
            Die Zeit hat ihre Kinder längst gefressen

            Kommentar


            • #7
              har har...

              ... wenn mir einer sagt wie ich es lösen soll dann check ich es wenigstens auch

              danke @wurzel

              mein script schau jetzt so aus:

              PHP-Code:
              <?
              //Variablen
              $bilder = array();
              $verzeichnis = opendir("../mein-pc/");

              //Whileschleife
              while ($daten = readdir ($verzeichnis)) 
               {
               if($daten != "." && $daten != ".." && substr($daten, 0, 9) == "thumbnail") array_push ($bilder, $daten);
               }
              closedir($verzeichnis);

              //Array durchmischen und 6 Bilder ausgeben
              srand ((float)microtime()*1000000);
              shuffle($bilder);
              echo $bilder[1]."<br>";
              echo $bilder[2]."<br>";
              echo $bilder[3]."<br>";
              echo $bilder[4]."<br>";
              echo $bilder[5]."<br>";
              echo $bilder[6]."<br>";
              ?>
              funzt eigentlich ganz gut

              merci

              Kommentar


              • #8
                na bitte, geht doch

                jetzt schmeisst du noch das "srand" raus, ist unnötig für shuffle()
                und wirkt sich auch nicht darauf aus ... die bildausgabe kannst du
                auch in einer schleife
                PHP-Code:
                for($i=0;$i<$maxwert;$i++) 
                anzeigen lassen, ist flexibler und fingerschonender.
                Kissolino.com

                Kommentar

                Lädt...
                X