forma: Grafik atomatisch austauschen

Hallo Zusammen,
ich hab folgendes Problem. Auf meiner Website hab ich auf der Startseite im Header nen flashfilm. in den anderen menüpunkten wird dieser Film dirch ein gif ersetzt. So weit funst auch alles. Jetzt möchte ich haber, wenn jemand üner den menüpunkt Portfolio meine Website betritt, dass die flashannimation läuft und wenn man dann auf start geht das gif bild da ist.
Also bei Eintritt in die Website soll der Film laufen und an sonsten soll nen Gif da stehen.
Kann mir jemand verraten mit was ich sowas umsetzen muss/kann? oder wo nach man googlen muss?

schonmal vielen Dank im vorraus
Forma

  1. echo $begrüßung;

    Kann mir jemand verraten mit was ich sowas umsetzen muss/kann? oder wo nach man googlen muss?

    Vermutlich möchtest du den nicht immer vorhandenen oder nicht immer wahrheitsgemäß vom Client ausgefüllten Referrer auswerten: $_SERVER['HTTP_REFERER']

    echo "$verabschiedung $name";

    1. Also kann man das problem mit php lösen. Aber warum ist das nicht ganz wahrheitsgemäß?und wie komme ich an die Daten, das jemand das erste mal da ist. Und muss ich nicht auch ein zeitlimit festegen, wann ich jemanden wieder neu kommen lasse? Mach ich das wirklich alle mit php?
      Liebe Grüße
      Forma

      1. echo $begrüßung;

        Also kann man das problem mit php lösen. Aber warum ist das nicht ganz wahrheitsgemäß?

        Wie alle Angaben, die vom User kommen kann auch der Referrer gefälscht sein oder irgendwelchen Blödsinn enthalten. Gedacht war er, dass darin die URL der verweisenden Seite drin steht. Die meisten Browser senden den mit.

        und wie komme ich an die Daten, das jemand das erste mal da ist.

        Der Referrer enthält dann keine URL, die auf eine deiner Seiten passt.

        Und muss ich nicht auch ein zeitlimit festegen, wann ich jemanden wieder neu kommen lasse?

        Wenn er "neu" kommt, hat er keine URL von deiner Seite in seinem Referrer.

        echo "$verabschiedung $name";

        1. Ich hab da jetzt mal was geschrieben, bin mir aber nicht so ganz sicher, ob das auch klappt. Und nen fehler is auf jeden fall noch drin. Kann mir da jemand weiterhelfen und mir sagen wo der knakspunkt liegt?

          <?php
          if ($_SERVER['HTTP_REFERER']== "meine_domain") {
          echo '<img src="ordner/bild.gif" alt="Bild" />';}

          if ($_SERVER['HTTP_REFERER']== "nicht meine Seite (was kommt dahin?)") {
          echo '<img src="ordner/bild.swf" alt="Bild" />';}
          ?>

          Liebe Grüße
          Forma

          1. Moin

            if ($_SERVER['HTTP_REFERER']== "nicht meine Seite (was kommt dahin?)")

            -> if ($_SERVER['HTTP_REFERER']!= "meine_domain") {

            Du musst natürlich nach einem Teil-String abfragen, weil sonst z.B. "http://meine_domain.de/irgendwas"  bei der Abfrage if ($_SERVER['HTTP_REFERER']!= "http://meine_domain.de") ein false liefern würde.

            Gruß Bobby

            --
            -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
            -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
            ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
            1. Du musst natürlich nach einem Teil-String abfragen, weil sonst z.B. "http://meine_domain.de/irgendwas"  bei der Abfrage if ($_SERVER['HTTP_REFERER']!= "http://meine_domain.de") ein false liefern würde.

              und wie mach ich das?
              Ist denn mein ansatz schonmal richtig? Bin nicht der König was php angeht. Bin quasi gerade dabei es zu lernen.
              Gruß Forma

              1. hi,

                Du musst natürlich nach einem Teil-String abfragen [...]

                und wie mach ich das?

                Du schaust im PHP-Manual unter Stringfunktionen nach, welche dir da wohl behilflich sein könnte(n).

                gruß,
                wahsaga

                --
                /voodoo.css:
                #GeorgeWBush { position:absolute; bottom:-6ft; }
              2. Moin

                Du musst natürlich nach einem Teil-String abfragen, weil sonst z.B. "http://meine_domain.de/irgendwas"  bei der Abfrage if ($_SERVER['HTTP_REFERER']!= "http://meine_domain.de") ein false liefern würde.

                und wie mach ich das?
                Ist denn mein ansatz schonmal richtig? Bin nicht der König was php angeht. Bin quasi gerade dabei es zu lernen.
                Gruß Forma

                Wenn ich dein Problem richtig verstanden habe, musst du auf deiner Portfolio-Seite abfragen ob der Referer eine Url deiner Seiten enthält, um zu entscheiden ob Flash oder gif. dies am besten mit einem String. Dazu z.B. folgender Link (weiß jetzt nicht obs die eleganteste Lösung ist. Arbeite normalerweise auch nicht mit Referer, weil diese eben gefälscht bzw. unterdrückt werden können)

                Das gleiche musst du natürlich auf deiner Startseite einsetzen.

                Der Ansatz war soweit schon korrekt.

                Gruß Bobby

                --
                -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
                1. Also was nen string is weiß ich ja jetzt bwz. wusste ich auch vorher konnte nur mit dem namen nichts anfangen. Nur wo setze ich denn jetzt den string ein. Wenn wir jetzt mal davon ausgehen das ich den EREG string verwende. Wo muss der hin? und wenn ich das im Portfolio hinbekommen habe wie schreibe ich "wenn nicht meine_domain dann zeige flash"? Eigentlich hatte ich auch vor den Schnipzel in der index.php unterzubringen. Bis jetzt ist da halt ne if abrage zur $textdatei.
                  Also vom prinzip hab ich ja verstanden was ich machen will und schreiben muss, nur umsetzen geht garnicht. Also bis jetzt nicht.
                  Liebe grüße
                  Forma

                  1. Moin

                    Ein bisschen Mitdenken ist erwünscht!

                    Nimm einfach deinen Ansatz und den von mir geposteten Link. Kombiniere beides und sieh was herauskommt.

                    Gruß Bobby

                    --
                    -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                    -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                    ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
                    1. Ich hab da ne Idee!
                      Is das Richtig?

                      <?php
                      if (ereg($_SERVER['HTTP_REFERER']== "meine_domain")) {
                      echo "$regs[<img src="ordner/bild.gif" alt="Bild" />]";
                      }
                      }
                      else {
                      echo "<img src="ordner/bild.swf" alt="Bild" />";
                      }
                      ?>

                      Mit der Zeichensetzung bin ich mir garnicht sicher. Is das denn richtig?
                      Liebe Grüße
                      Forma

                      1. Moin

                        if (ereg($_SERVER['HTTP_REFERER']== "meine_domain")) {

                        falsch!

                        vergleiche deine Schreibweise mit der Schreibweise auf der von mir gelinkten Seite.

                        Ist
                        ereg(string Suchmuster, string Zeichenkette)

                        und

                        ereg($_SERVER['HTTP_REFERER']== "meine_domain")

                        das gleiche?

                        Ich glaube nich!

                        Es scheitert nur an dem Verständnis der ereg-Funktion! Vom allgemeinen Ansatz her ist es aber vollkommen richtig. Du wirst wenn du so weitermachst noch dahinter kommen.

                        Gruß Bobby

                        --
                        -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                        -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                        ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
                        1. So?:

                          <?php
                          if (ereg ("([meine_domain])", $_SERVER['HTTP_REFERER'])) {
                          echo "$regs[<img src="ordner/bild.gif" alt="Bild" />]";
                          }
                          } else {
                          echo "<img src="ordner/bild.swf" alt="Bild" />";
                          }

                          ?>

                          ICh kann mit den zahlen von den Tagen und Jahren nichts anfangen. Aber ich hoffe, dass ich das jetzt richtig verstanden habe. Ansonsten berichtige mich bitte. Finde deine hilfe echt super, vorallem kommt man weiter.
                          Liebe Grüße
                          Forma

                          1. Moin

                            So?:

                            <?php
                            if (ereg ("([meine_domain])", $_SERVER['HTTP_REFERER'])) {

                            ^^            ^^
                                        Warum die Klammern?

                            echo "$regs[<img src="ordner/bild.gif" alt="Bild" />]";

                            ^^^^^^                                        ^
                                    warum die Variable $regs?

                            }
                            } else {

                            ^
                              warum diese schließende geschweifte Klammer?

                            echo "<img src="ordner/bild.swf" alt="Bild" />";
                            }

                            ?>

                            Ansonsten soweit richtig. Langsam wird es doch.

                            Gruß Bobby

                            --
                            -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                            -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                            ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
                            1. Moin

                              Nachtrag:

                              echo "<img src="ordner/bild.swf" alt="Bild" />";

                              Ein SWF kannst du m.E. nicht als <img> einbinden!

                              Gruß Bobby

                              --
                              -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                              -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                              ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
                              1. echo "<img src="ordner/bild.swf" alt="Bild" />";

                                Ein SWF kannst du m.E. nicht als <img> einbinden!

                                Ja das is mir klar:
                                Hier wie es einbinden würde:

                                <?php
                                if (ereg ("http://www.arne-sonnabend.com", $_SERVER['HTTP_REFERER'])) {
                                echo "<img src="pictures/header/logo.gif" alt="Logo" />";
                                }
                                else {
                                echo "<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="280" height="155">
                                <param name="movie" value="http://www.arne-sonnabend.com/pictures/header/logo_annimiert.swf">
                                <param name="quality" value="high">
                                <embed src="http://www.arne-sonnabend.com/pictures/header/logo_annimiert.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="280" height="155"></embed>
                                </object>";
                                }

                                ?>

                                funst nur leider nicht so ganz.
                                Liebe Grüße
                                forma

                                1. Moin

                                  echo "<img src="ordner/bild.swf" alt="Bild" />";

                                  Ein SWF kannst du m.E. nicht als <img> einbinden!

                                  Ja das is mir klar:
                                  Hier wie es einbinden würde:

                                  <?php
                                  if (ereg ("http://www.arne-sonnabend.com", $_SERVER['HTTP_REFERER'])) {
                                  echo "<img src="pictures/header/logo.gif" alt="Logo" />";
                                  }
                                  else {
                                  echo "<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="280" height="155">
                                  <param name="movie" value="http://www.arne-sonnabend.com/pictures/header/logo_annimiert.swf">
                                  <param name="quality" value="high">
                                  <embed src="http://www.arne-sonnabend.com/pictures/header/logo_annimiert.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="280" height="155"></embed>
                                  </object>";
                                  }

                                  ?>

                                  funst nur leider nicht so ganz.
                                  Liebe Grüße
                                  forma

                                  Achte auf deine Anführungszeichen! So wie du es hier hin gepostet hast funktionierts natürlich nicht! Außerdem <embed> gehört nicht zum HTML-Standard!

                                  Gruß Bobby

                                  --
                                  -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                                  -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                                  ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
                                  1. So sieht es jetzt aus:

                                    <?php
                                    if (ereg ("http://www.arne-sonnabend.com", $_SERVER['HTTP_REFERER'])) {
                                    echo "<img src="pictures/header/logo.gif" alt="Logo" />";
                                    }
                                    else {
                                    echo "<object classid="CLSID:D27CDB6E-AE6D-11cf-96B8-444553540000" width="600" height="400"
                                                 codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0">
                                    <param name="movie" value="http://www.arne-sonnabend.com/pictures/header/logo_annimiert.swf">
                                    <param name="quality" value="high">
                                    <param name="scale" value="exactfit">
                                    <param name="menu" value="true">
                                    <param name="bgcolor" value="#000040">
                                    <embed src="nibbles.swf" quality="high" scale="exactfit" menu="false"
                                     bgcolor="#000000" width="280" height="155" swLiveConnect="false"
                                     type="application/x-shockwave-flash"
                                                  pluginspage="http://www.macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash">
                                    </embed>
                                    </object>"
                                    }

                                    ?>

                                    Also ich finde den " fehler nicht. Bzw ich finde ihn schon kann ihn aber nicht beheben. Nach dem Pfad der SWF Datei wird das " nicht anerkannt. Und  das verstehe ich nicht.

                                    Die einbing von SWF Dateien hab ich mir von Dreamweaver erstellen lassen. Komisch das das nicht passte. Wie kann ich denn jetzt den fehler beheben. Oder fehlt noch ein Anführungsstrich??
                                    Liebe Grüße
                                    Forma

                                    1. Moin

                                      Die einbing von SWF Dateien hab ich mir von Dreamweaver erstellen lassen. Komisch das das nicht passte. Wie kann ich denn jetzt den fehler beheben. Oder fehlt noch ein Anführungsstrich??

                                      Es fehlt keins es sind einige zuviel!

                                      als Beispiel nur mal die ersten Zeichen:

                                      echo "<object classid="CLSID:D27CDB6E-AE6D-11cf-96B8-444553540000" ..
                                           ^                ^                                          ^
                                           ok               falsch                                   falsch

                                      diese falschen Anführungszeichen müssen maskiert mit slashes maskiert werden.

                                      Gruß Bobby

                                      --
                                      -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                                      -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                                      ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
                                      1. Ich hab da jetzt mal nen bisschen was weggenommen. Passt aber immer noch nicht. Und ich weiß nicht warum. Aber es ist schon besser oder?

                                        <?php
                                        if (ereg ("http://www.arne-sonnabend.com", $_SERVER['HTTP_REFERER'])) {
                                        echo "<img src="pictures/header/logo.gif" alt="Logo" />";
                                        }
                                        else {
                                        echo "<object classid=CLSID:D27CDB6E-AE6D-11cf-96B8-444553540000 width="600" height="400"
                                                     codebase=http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0>
                                        <param name="movie" value=http://www.arne-sonnabend.com/pictures/header/logo_annimiert.swf>
                                        <param name="quality" value="high">
                                        <param name="scale" value="exactfit">
                                        <param name="menu" value="true">
                                        <param name="bgcolor" value=#000040>
                                        <embed src=http://www.arne-sonnabend.com/pictures/header/logo_annimiert.swf" quality="high" scale="exactfit" menu="false
                                        bgcolor=#000000" width="280" height="155" swLiveConnect="false
                                        type="application/x-shockwave-flash
                                                      pluginspage="http://www.macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash">
                                        </embed>
                                        </object>";
                                        }

                                        ?>

                                        Liebe Grüße
                                        Forma

                                        1. echo "<img src="pictures/header/logo.gif" alt="Logo" />";
                                          in dieser Zeile muss nen fehler sein, das zeigt mir zumindest mein Browser an HTTP://arne-sonnabend.com/
                                          ich verstehe aber nicht was das für ein fehler sein soll.
                                          Liebe Grüße
                                          Forma

                                        2. Moin

                                          Ich wollte eigentlich nix vorkauen aber hier ein kleines Beispiel.

                                          echo "<img src="pictures/header/logo.gif" alt="Logo" />";

                                          Was mach hier PHP?

                                          echo ""; ist die aufrufende Function

                                          echo "<img src="    pictures/header/logo.gif" alt="Logo" />";
                                                ^^^^^^^^^
                                          Nun nimmt php nur diese Zeichen als echo alles andere wird versucht als PHP zu parsen.

                                          Also wäre richtig:

                                          echo "<img src="pictures/header/logo.gif" alt="Logo" />";
                                                         ^                         ^      ^     ^

                                          Als Kleiner Tip: Wenn du über diese Grundregeln nicht bescheid weißt, fang bitte PHP nicht in der Mitte an zu lernen sondern von ganz vorn. Im Urschleim der Suppe.

                                          Gruß Bobby

                                          --
                                          -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                                          -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                                          ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
                                          1. So, jetzt funst alles wie ne eins. Hier der Code:
                                            <?php
                                            if (ereg ("http://arne-sonnabend.com/", $_SERVER['HTTP_REFERER'])) {
                                            echo "<img src="pictures/header/logo.gif" alt="Logo" />";
                                            }
                                            else {
                                            echo "<object classid="CLSID:D27CDB6E-AE6D-11cf-96B8-444553540000" width="600" height="400"
                                                         codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0">
                                            <param name="movie" value="http://www.arne-sonnabend.com/pictures/header/logo_annimiert.swf">
                                            <param name="quality" value="high">
                                            <param name="scale" value="exactfit">
                                            <param name="menu" value="true">
                                            <param name="bgcolor" value="#FFFFFF">
                                            <embed src="http://www.arne-sonnabend.com/pictures/header/logo_annimiert.swf" quality="high" scale="exactfit" menu="false"
                                            bgcolor="#FFFFFF" width="280" height="155" swLiveConnect="false"
                                            type="application/x-shockwave-flash"
                                                          pluginspage="http://www.macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash">
                                            </embed>
                                            </object>";
                                            }

                                            ?>

                                            Besten Dank nochmal für die Hilfe. Du hast leider recht mit der php ahnung. Ich hab das ansatzweise in meiner ausbild als grafiker gelernt, aber da ich der einzige war der sich damit nur ein bisschen auseinandergesetzt hat wurde das Thema nicht sehr ausgearbeitet. Kennst du denn ne Gute Seite wo so einsteigersachen besprochen werden?

                                            Vielen Dank nochmal und noch einen schönen Abend
                                            Forma

                                            1. Moin

                                              Besten Dank nochmal für die Hilfe. Du hast leider recht mit der php ahnung. Ich hab das ansatzweise in meiner ausbild als grafiker gelernt, aber da ich der einzige war der sich damit nur ein bisschen auseinandergesetzt hat wurde das Thema nicht sehr ausgearbeitet. Kennst du denn ne Gute Seite wo so einsteigersachen besprochen werden?

                                              Code ist soweit in Ordnung. Noch ein Hinweis. Schau bitte was der Validator
                                              des W3C zu deiner Seite sagt. Es scheint nicht nur bei PHP zu haken.

                                              Ansonsten kann ich dir nur empfehlen mal bei Google  nach einem Anfänger-Tutorial zu suchen.

                                              Gruß Bobby

                                              --
                                              -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                                              -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                                              ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
                            2. Also so?

                              <?php
                              if (ereg ("meine_domain", $_SERVER['HTTP_REFERER'])) {
                              echo "<img src="ordner/bild.gif" alt="Bild" />";
                              }
                              else {
                              echo "<img src="ordner/bild.swf" alt="Bild" />";
                              }

                              ?>

                              1. Moin

                                Also so?

                                <?php
                                if (ereg ("meine_domain", $_SERVER['HTTP_REFERER'])) {
                                echo "<img src="ordner/bild.gif" alt="Bild" />";
                                }
                                else {
                                echo "<img src="ordner/bild.swf" alt="Bild" />";
                                }

                                ?>

                                Siehe meinen Nachtrag: SWF-Objekte bitte so einbinden und nicht als <img>.

                                Vom PHP-Code her würd ich auf den ersten Blick sagen: Nun stimmts.

                                Gruß Bobby

                                --
                                -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                                -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                                ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
                  2. Moin

                    |Wenn wir jetzt mal davon ausgehen das ich den EREG string verwende.

                    Nur als Ergänzung am Rande: ereg ist kein String. ereg() ist eine Funktion und vergleicht Strings nach Übereinstimmungen.

                    Strings = Zeichenketten!

                    Gruß Bobby

                    --
                    -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                    -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                    ie:{ br:> fl:{ va:{ ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)