Bilderrotation

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

  • Bilderrotation

    Hallo liebe Leute!

    Hier gab es schon einmal ein Post zu diesem Thema - trotzdem habe ich noch eine Frage

    Ich habe auf einer anderen Seite ein Script zur Rotation von Bilden gefunden. Das funktioniert tadellos.

    Jetzt möchte ich aber 3 Bilder nebeneinander haben die sich austauschen plus Text darunter

    Bild Bild Bild

    Text

    Habe es zum testen mal mit drei spalten versucht - aber da streikt er
    Ist es möglich so etwas zu verwirklichen?

    Der code den ich eingebaut habe ist einstweilen nur für das Bild und sieht folgendermaßen aus

    <?php
    $banner = array(
    array("Banner" => "<img src='bild1.jpg' width=200 height=150>"),
    array("Banner" => "<img src='bild2.jpg' width=200 height=150>"),
    array("Banner" => "<img src='bild3.jpg' width=200 height=150>"),
    array("Banner" => "<img src='bild4.jpg' width=200 height=150>"),
    array("Banner" => "<img src='bild5.jpg' width=200 height=150>")
    );
    function Ausgabe ($banner) {
    echo "$banner";
    }

    function zufall($min,$max) {
    srand ((double)microtime()*10000);
    return (rand($min,$max));
    }

    $maxwert = count($banner)-1;
    $nr = zufall(0,$maxwert);
    $ausgabe = $banner[$nr][Banner];
    Ausgabe ($ausgabe);
    ?>

    Wie kan ich da noch einen Text anfügen und kann man das zeitlich steuern?

    viele Fragen ich weiss - aber ich wäre euch unendlich dankbar wenn ihr mir helfen könnte

    Liebe Grüße
    Daniela

  • #2
    "da streikt er" ist keine Problembeschreibung.

    Also versuche dich nochmal deutlich auszudrücken

    Kommentar


    • #3
      ja, für deine drei bilder musst du die geschichte

      Code:
      $maxwert = count($banner)-1; 
      $nr = zufall(0,$maxwert); 
      $ausgabe = $banner[$nr][Banner]; 
      Ausgabe ($ausgabe);
      drei mal durchlaufen lassen. etwas komplexer wirds, wenn die bilder sich nicht doppeln dürfen.
      bsp: ausgabe: bild1.jpg bild1.jpg bild3.jpg

      text geht natürlich auch. nur: wo soll der herkommen - da braucht man wohl noch ein paar infos von dir...
      **********
      arkos
      **********

      Kommentar


      • #4
        Zeitlich kann man dies schwerlich steurn, zumindest mit php nicht, wenn die seite schon geladen ist.
        wenn du es z.b. jede 10 sekunden neu haben möchtest, wäre das nur bei reload möglich.

        was möglich ist, dass du für jeden timestamp zeitpunkt eine bildfolge festelegst.

        so zum beilspiel

        if(bekommene zeit zwischen 15 und 16 uhr liegt {
        echo "<a src.... bild15-16.jpg";
        }elseif(...
        Webdesign und Webentwicklung - Plunix.de

        Kommentar


        • #5
          zeitliche steuerung könnte aber auch per cron laufen - kommt ganz darauf an, WAS zeitlich gesteuert werden soll
          **********
          arkos
          **********

          Kommentar


          • #6
            Da streikt er - soso ;o))

            Also erstmal danke für die Antworten

            Zeitliche Rotation nicht möglich - es sei denn wenn jemand um 16 uhr auf die seite diese bilder um 18 uhr jene
            Das war eine klare Ansage
            Danke

            Zeitens:
            Bilder und Text

            Problembeschreibung - gibt es in dem Fall nicht wirklich - ich suche eher

            Ich habe ein Script, wie schon zu beginn gepostet - das mir ein Bild auf der Seite beim reload austauscht.

            Ich möchte aber nicht ein Bild sonder drei in einer Reihe tauschen

            Problem - bzw Suche ende
            Was soll ich da jetzt noch erklären?

            wenn ich das script drei mal in die seite einbaue funktioniert das nicht und meine Frage lautet - hat jemand eine Ahnung wie ich das machen kann?

            @arkos
            Das klingt irgendwie nicht so kompliziert aber ich weiss trotzdem nicht wie das funktionieren soll

            Wenn ich den code so nehme wie ich ihn gefunden habe, dann verstehe ich - es gibt eine zelle da wird das php script reingeschrieben und dort erscheinen dann meine bilder.

            Meine vorgangsweise war - gut dann eben drei Zellen und in jede zelle das script.

            Herausgekommen ist:
            Fatal error: Cannot redeclare ausgabe() in i:\dateien von dani\extrawork\proges\site_work\rotation.php on line 46
            Quelltext:

            <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
            <html>
            <head>
            <title>Bilder-/Bannerrotation</title>
            </head>
            <body>

            <table align=center width="95%">
            <tr>
            <td align=center>

            <?php
            $banner = array(
            array("Banner" => "<img src='bl_dick.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bl_fraurauch.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bl_leiter.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bl_sumo.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bild5.jpg' width=200 height=150>")
            );
            function Ausgabe ($banner) {
            echo "$banner";
            }

            function zufall($min,$max) {
            srand ((double)microtime()*10000);
            return (rand($min,$max));
            }

            $maxwert = count($banner)-1;
            $nr = zufall(0,$maxwert);
            $ausgabe = $banner[$nr][Banner];
            Ausgabe ($ausgabe);
            ?>

            </td>
            <td align=center>

            <?php
            $banner = array(
            array("Banner" => "<img src='bl_dick.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bl_fraurauch.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bl_leiter.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bl_sumo.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bild5.jpg' width=200 height=150>")
            );
            function Ausgabe ($banner) {
            echo "$banner";
            }

            function zufall($min,$max) {
            srand ((double)microtime()*10000);
            return (rand($min,$max));
            }

            $maxwert = count($banner)-1;
            $nr = zufall(0,$maxwert);
            $ausgabe = $banner[$nr][Banner];
            Ausgabe ($ausgabe);
            ?>

            </td>
            <td align=center>

            <?php
            $banner = array(
            array("Banner" => "<img src='bl_dick.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bl_fraurauch.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bl_leiter.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bl_sumo.jpg' width=161 height=215>"),
            array("Banner" => "<img src='bild5.jpg' width=200 height=150>")
            );
            function Ausgabe ($banner) {
            echo "$banner";
            }

            function zufall($min,$max) {
            srand ((double)microtime()*10000);
            return (rand($min,$max));
            }

            $maxwert = count($banner)-1;
            $nr = zufall(0,$maxwert);
            $ausgabe = $banner[$nr][Banner];
            Ausgabe ($ausgabe);
            ?>

            </td>
            </tr>
            </table>


            </body>
            </html>


            Liebe Grüße
            daniela

            Kommentar


            • #7
              ah ok - also ziemliche neulingin


              eine fuction brauchst / darfst du nur einmal pro seitenaufruf deklarieren - und ein array muss auch nur einmal erzeugt werden. das behält php schon bis zum ende des scriptes schon - php hat n besseres kurzzeitgedächtnis als ich

              also räumen wir deinen code demnach ein wenig auf:

              Code:
              <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
              <html>
              <head>
              <title>Bilder-/Bannerrotation</title>
              </head>
              <body>
              
              <table align=center width="95%">
              <tr>
              <td align=center>
              
              <?php 
              
              // $banner = array merkt sich php
              
              $banner = array( 
              array("Banner" => "<img src='bl_dick.jpg' width=161 height=215>"), 
              array("Banner" => "<img src='bl_fraurauch.jpg' width=161 height=215>"), 
              array("Banner" => "<img src='bl_leiter.jpg' width=161 height=215>"), 
              array("Banner" => "<img src='bl_sumo.jpg' width=161 height=215>"), 
              array("Banner" => "<img src='bild5.jpg' width=200 height=150>")
              );
               
              // erste und einmalige deklaration der functions
              
              function Ausgabe ($banner) { 
              echo "$banner"; 
              } 
              
              function zufall($min,$max) { 
              srand ((double)microtime()*10000); 
              return (rand($min,$max)); 
              } 
              
              $maxwert = count($banner)-1; 
              
              //maxwert wird auch gemerkt also in zukunft weg
              
              $nr = zufall(0,$maxwert); 
              $ausgabe = $banner[$nr][Banner]; 
              Ausgabe ($ausgabe); 
              ?> 
              
              </td>
              <td align=center>
              
              <?php 
              $nr = zufall(0,$maxwert); 
              $ausgabe = $banner[$nr][Banner]; 
              Ausgabe ($ausgabe); 
              ?> 
              
              </td>
              <td align=center>
              
              <?php 
               
              $nr = zufall(0,$maxwert); 
              $ausgabe = $banner[$nr][Banner]; 
              Ausgabe ($ausgabe); 
              ?> 
              
              </td>
              </tr>
              </table>
              
              
              </body>
              </html>
              nicht getestet, müsste aber klappen...
              aber bitte auch lesen und verstehen, warum es klappt - wenn es klappt

              bei unverständnis fragen, googlen und lesen



              EDIT: wenn das klappt, und du das verstehst: HAUSAUFGABE: Ausgabe der Zellen mit einer for-Schleife realisieren und somit Quelltext optimieren
              Zuletzt geändert von arkos; 04.10.2006, 14:39.
              **********
              arkos
              **********

              Kommentar


              • #8
                was suchst du denn genau.
                text im feld, was neben den bildern angezeigt bild.
                oder text auf den bildern, sprich ein text als wasserzeichen.
                wäre schön wenn du das noch genauer definierst
                Webdesign und Webentwicklung - Plunix.de

                Kommentar


                • #9
                  @arkos

                  Vielen Dank ;o)) *kniefall*
                  Funktioniert ;o)

                  Verstanden? - zum Teil - werde mir deine hausaufgabe zu herzen nehmen und schaun ob ich das ganze verstehe und lösen kann.

                  Was jetzt natürlich noch übrig ist, es sollen nicht immer die gleichen bilder sein - also es sollen nie zwei gleiche angezeigt werden.

                  Möglich? sicher
                  @lennie
                  danke der nachfrage - aber auf wunsch kommt der Text ebenfalls auf ein bild, womit sich das erübrigt hat. Hab ich gerade erfahren ;o))

                  da stellt sich einermeiner die Frage, kann man ordner machen aus denen er sich die Bilder hoilt
                  Bilder an erster Stelle - ordner 1
                  Bilder anzweiter Stelle - Ordenr2 usw?

                  oder führt das zu weit?

                  wen ich den Text nämlich auch auf Bildern habe, muss ich ihm ganz spezifisch sagen- keine Photos sondern nur die Textbilder

                  Hmm
                  *nachdenk*

                  Freue mich über eure Hilfe und sei es nur ein Denkanstoss (Vorsicht - das PHP Wissen ist noch einkleines irgendwas ;o))

                  oder wo ich mir so eine Info holen kann?

                  Besten Dank und liebe Grüße
                  Daniela

                  Kommentar


                  • #10
                    vorab... steh bitte wieder auf

                    so, du willst gerade gleichzeitig von drei tellern essen, hast aber nur eine gabel...

                    lass uns alles nacheinander machen.

                    womit wollen wir anfangen? ich würde sagen, dass du keine bilder doppelt hast. dafür ist es aber verdammt wichtig, dass du den quelltext bis dato verstehst.

                    ansatz hier ist: das php-scipt muss sich merken, welches bild es schon mal ausgesucht wurde. oder aber: ich baue eine for-schleife bis 3 und mische mein array. diesen code gebe ich dir an die hand. alle weiteren schritte sollten wir angehen, wenn du alles wirklich verstanden hast. dabei kann dir www.selfphp.de z.b. helfen.

                    Code:
                    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
                    <html>
                    <head>
                    <title>Bilder-/Bannerrotation</title>
                    </head>
                    <body>
                    
                    <table align=center width="95%">
                    <tr>
                    
                    <?php
                    
                    // $banner = array ; merkt sich php
                    
                    $banner = array( 
                    array("Banner" => "<img src='bl_dick.jpg' width=161 height=215>"), 
                    array("Banner" => "<img src='bl_fraurauch.jpg' width=161 height=215>"), 
                    array("Banner" => "<img src='bl_leiter.jpg' width=161 height=215>"), 
                    array("Banner" => "<img src='bl_sumo.jpg' width=161 height=215>"), 
                    array("Banner" => "<img src='bild5.jpg' width=200 height=150>")
                    );
                    
                    
                    shuffle($banner); // das banner-array wird frisch gemischt....
                    
                    for($x=0;$x<=2;$x++){
                        echo "<td align=center>";
                        echo $banner[$x][Banner];
                        echo "</td>\n";
                    }
                    
                    ?>
                    
                    </tr>
                    </table>
                    
                    
                    </body>
                    </html>
                    lernen, verstehen - dann machen wir weiter
                    **********
                    arkos
                    **********

                    Kommentar


                    • #11
                      Danke für die Erlösung - mein Kreuz hat sich schon beschwert

                      So vielen Dank - so ein kleiner Tritt in Richtung - bitte dazulernen ist gut! Ich muss mich aber erst hinsetzen und das tun - Da ich weiss, dass du auf mich wartest, werd ich mich dummeln im lernen ;o))

                      Bis später
                      Liebe Grüße
                      Daniela

                      Kommentar


                      • #12
                        Original geschrieben von arkos

                        drei mal durchlaufen lassen. etwas komplexer wirds, wenn die bilder sich nicht doppeln dürfen.
                        Hi,
                        könntet ihr mir mal hierzu denkanstöße geben, wie ih dies verwirkliche?
                        habe leider noch nicht groß mit schleifen gearbeitet, und verstehe die komplexeren schleifen ncoht nicht ganz.
                        gehe allerdings davon aus das ich eine schleife benötigen werde.
                        Webdesign und Webentwicklung - Plunix.de

                        Kommentar


                        • #13
                          Was kannst du nicht?

                          Ne schleife 3 mal durchlaufen lassen?

                          Falls doch, dann zeig deine Ansätze.

                          Kommentar


                          • #14
                            ?????


                            die lösung steht doch da schon... bist du im richtigen post??
                            **********
                            arkos
                            **********

                            Kommentar


                            • #15
                              ich habe keine ansätze.ziel von mir ist eigentlich der 2. teil des satzes:

                              etwas komplexer wirds, wenn die bilder sich nicht doppeln dürfen.

                              dafür muss man solange eine schleife duchlaufen lassen, biss die bedingung erfüllt ist, dass §zufall2 != $zufall1 allerdings weis ich nicht wie ich dies in eine schleife einbaue
                              Webdesign und Webentwicklung - Plunix.de

                              Kommentar

                              Lädt...
                              X