Jazz: Dynamische Sekunden auch in Php??

Guten Morgen!
Ich hab da mal ne Frage:
Eine Seite aktualisiert sich nach 45 Sekunden erneut.
Ich möchte, dass man folgende Ausgabe bekommt:

Die Seite aktualisiert sich in XX Sekunden

und bei XX sollen die Sekunden herunter zählen.

Ich habe sehr intensiv gegoogelt und bin eben auf einen Beitrag gestoßen, in dem es hieß, dass so etwas nicht mit Php möglich wäre, sondern nur mit Java bzw. JS. Ist das so korrekt? Wenn ja, warum?

Danke schön!

Netten Gruß

  1. Die Seite aktualisiert sich in XX Sekunden
    und bei XX sollen die Sekunden herunter zählen.
    Ich habe sehr intensiv gegoogelt und bin eben auf einen Beitrag gestoßen, in dem es hieß, dass so etwas nicht mit Php möglich wäre, sondern nur mit Java bzw. JS. Ist das so korrekt? Wenn ja, warum?

    Weil PHP nur auf dem Server ausgeführt wird. Wenn die Ausgabe vom PHP Script bei dir am Browser ankommt ist das PHP Script schon lange fertig und kann daher gar nix mehr runterzählen.
    Dh. das Runterzählen musst du mit irgendeiner browserseitigen Technik wie zb Javascript oder einem Javaapplet realisieren.

    mfg
      Horst

    1. Super, vielen Dank an alle. Jetzt bin ich ja "auf der sicheren Seite".
      Das ist ja echt unglaublich. Da kann man mit Php soooo viel machen und so etwas geht dann nicht. Und ich suche mir nach einem geeigneten Script einen ab - da muss man am Ende doch über sich selber lachen... :-)

      Vielen Dank!!

      1. Ahoi Jazz,

        Da kann man mit Php soooo viel machen und so etwas geht dann nicht.

        Es geht schon, nur halt nicht direkt und vermutlich auch nicht alzu sauber.

        MfG

        --
        Alle Angaben wie immer ohne Gewähr
        LEISE IST SCHEISSE!
      2. ...jetzt noch ne Frage:
        Gibt es jetzt also für mein Problem ne Lösung, außer mit Java-Script? Wenn ja, wie sieht diese Lösung aus? Wie es schon erwähnt ist, wenn JS deaktiviert ist, kommt ja gar nichts. Die Variante mit einem animierten Gif finde ich dann doch eher uncool.
        Das ist doch komisch, dass man sämtliches und alles mit Php realisieren kann und wenn es darum geht, von 45 rückwärts zu zählen, ist Schicht im Schacht!!??

        1. Ahoi Jazz,

          Das ist doch komisch, dass man sämtliches und alles mit Php realisieren kann und wenn es darum geht, von 45 rückwärts zu zählen, ist Schicht im Schacht!!??

          du kannst das mit PHP schon machen sleep() bzw. usleep() sind da unter umständen auch das was du suchst. nur der User bekommt von diesem Rückwärtsgezähle nix mit.

          Wenn du das ganze mit JS machst musst du aufpassen das du das ganze unabhängig von der Rechnerzeit machst.

          Was ist an animierten GIFs uncool? weist was du da an grafischen efekten
          machen kannst? farbwechsel, übergänge alles mögliche, quasi in
          daumenkino am rechner.

          MfG

          --
          Alle Angaben wie immer ohne Gewähr
          LEISE IST SCHEISSE!
          1. Nee, animierte Gifs finde ich schon geil. Also ich habe Animake und dieser Daumenkino-Effekt, ja, ich liebe ihn schon ein bißchen. Ich mache damit viel und habe auch ganz gelungene Resultate.
            Was uncool daran ist: Man investiert viel Zeit darin, etwas zu suchen und zu realsieren, ein Script halt. Meistens bin ich etwas blöd und es klappt selten am Anfang, dann am Ende aber doch.
            Bei der Sekundenanzeige kam mir die Idee mit dem animierten Gif auch gleich am Anfang. Dann dachte ich: Nee, geht bestimmt auch mit Php, weil ich irgendwann mal damit angefangen habe JS-Lösungen weitesgehend zu boykottieren. Und dann, nach Stunden, greift man doch auf die "Billig-Variante" zurück. Das ist ein bißchen so, als wenn Du Php mit nem Iframe einbaust. Da platzt mir auch der A****... :-)

            1. Ahoi Jazz,

              Bei der Sekundenanzeige kam mir die Idee mit dem animierten Gif auch gleich am Anfang. Dann dachte ich: Nee, geht bestimmt auch mit Php, weil ich irgendwann mal damit angefangen habe JS-Lösungen weitesgehend zu boykottieren.

              Irgendwie frage ich mich gerade ob du nur einen statischen counter oder
              einen dynamischen willst. also ob du immer von 45Sek runterzählen willst
              oder ob es differieren kann.
              Du könntest ja ein "Das dauert X Sekunden, noch Y verbleibend". ist JS
              deaktiviert (solltest du dich für eine JS lösung entscheiden) dann gehts
              ja noch, könte ja auch beides kombinieren (anigif und JS-counter)

              MfG

              --
              Alle Angaben wie immer ohne Gewähr
              LEISE IST SCHEISSE!
              1. ...ich will immer nur von 45 runter zählen. Aber man soll den Zählvorgang schon sehen können. alos 45,44,43,42,...

                1. Ahoi Jazz,

                  ...ich will immer nur von 45 runter zählen. Aber man soll den Zählvorgang schon sehen können. alos 45,44,43,42,...

                  Dann könntest du ein JavaApplet machen, eine Flashanimation, oder sonst irgendwas.

                  Also wenn JS aktiviert ist das JS benutzen
                  Wenn nich die Flashanimation, wenn kein Flashplugin installiert ist das
                  Applet wenn das auch nicht angezeigt werden kann das GIF.

                  MfG

                  --
                  Alle Angaben wie immer ohne Gewähr
                  LEISE IST SCHEISSE!
                  1. ...wie sieht die Lösung in JS aus??

                    1. ...wie sieht die Lösung in JS aus??

                      javascript und timer in Google eingetippt liefert zig Beispiele.

                      http://www.google.at/search?hl=de&q=javascript+timer&btnG=Google-Suche&meta=

                      mfg
                       Horst

        2. Hi,

          Gibt es jetzt also für mein Problem ne Lösung, außer mit Java-Script?

          IMHO keine ernsthafte. :)

          Die Sache mit dem IFrame ist allerdings prinzipiell sehr einfach:

          <title>Countdown</title>
          <?php
           $countdown=45;
           $s=(isset($_GET['s']))?($_GET['s']-1):$countdown;
           if($s>0) {
            echo '<meta http-equiv="refresh" content="1; url='.$_SERVER['PHP_SELF'].'?s='.$s.'">';
            echo 'Noch '.$s.' Sekunden';
           } else {
            echo 'Countdown abgelaufen!';
           }
          ?>

          Und diese PHP-Datei halt mittels IFrame in die Seite einbinden.

          Problem ist natürlich eine *wechselnde* Latenz/Antwortzeit des Servers (von solchen Nicklichkeiten wie "Browser ignoriert META-Refresh prinzipiell" natürlich abgesehen ;->). D.h., ist die Anbindung nicht "flüssig", so müßten ggf. auch Sekunden übersprungen werden. Das ließe sich bewerkstelligen, indem man die Zeit noch mit der Serverzeit abgleicht.

          Das ist doch komisch, dass man sämtliches und alles mit Php realisieren kann und wenn es darum geht, von 45 rückwärts zu zählen, ist Schicht im Schacht!!??

          Wie kommst Du darauf, daß man alles mit PHP realisieren kann? Für Dynamik in HTML ist halt JS gedacht. Und nur mit einem Konzept wie bei JS ist sie praktisch überhaupt möglich.

          Gruß, Cybaer

          --
          Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
        3. hi,

          Das ist doch komisch, dass man sämtliches und alles mit Php realisieren kann und wenn es darum geht, von 45 rückwärts zu zählen, ist Schicht im Schacht!!??

          Nein, das ist nicht komisch.
          Du hast offenbar den Unterschied zwischen serverseitig und clientseitig immer noch nicht verstanden.
          Sieh zu, dass du ihn verstanden hast, _bevor_ du bzgl. deines Problems in irgendeiner Richtung weiter machst.

          gruß,
          wahsaga

          --
          /voodoo.css:
          #GeorgeWBush { position:absolute; bottom:-6ft; }
          1. Nein, das ist nicht komisch.
            Du hast offenbar den Unterschied zwischen serverseitig und clientseitig immer noch nicht verstanden.

            Doch, habe ich. Es geht um die Sache als solche. Man kann mit Php so vieles machen, aber etwas verhältnismäßig einfaches geht dann nicht. Unabhängig von Server und Client, sondern eher mit Hinz und Kunz...

            1. Nein, das ist nicht komisch.
              Du hast offenbar den Unterschied zwischen serverseitig und clientseitig immer noch nicht verstanden.

              Doch, habe ich. Es geht um die Sache als solche. Man kann mit Php so vieles machen, aber etwas verhältnismäßig einfaches geht dann nicht. Unabhängig von Server und Client, sondern eher mit Hinz und Kunz...

              Ich hab auch nach wie vor den Verdacht, dass du das Prinzip von PHP und Javascript nicht verstanden hast.
              Wie sollte deiner Meinung nach eine Funktion oder ähnliches in PHP aussehen um das von dir gewünschte zu realisieren?

              mfg
               Horst

              1. Oh je...
                Vergleich es mal so: Ein Computer ist viel komplexer als eine Scheibe Brot. Ein Brot kann man essen, einen Computer nicht. Also hat das Brot etwas elementares, was der Computer nicht hat.
                So war das gemeint.

                1. hi,

                  Oh je...

                  Ja, allerdings.

                  Vergleich es mal so: Ein Computer ist viel komplexer als eine Scheibe Brot. Ein Brot kann man essen, einen Computer nicht. Also hat das Brot etwas elementares, was der Computer nicht hat.

                  Deshalb kauft sich jeder vernünftige Mensch ein Brot, wenn er Hunger hat - du hingegen lamentierst darüber, dass es furchtbar blöd sei, dass man einen Computer nicht essen könne.
                  Also darf man in so einem Fall wohl durchaus behaupten, dass du den Sinn und Einsatzzweck eines Computers nicht verstanden hast.

                  gruß,
                  wahsaga

                  --
                  /voodoo.css:
                  #GeorgeWBush { position:absolute; bottom:-6ft; }
                  1. ...dass das vom größten Schlauschwätzer hier im Forum kommen musste war ja mal wieder klar...

                    1. hi,

                      ...dass das vom größten Schlauschwätzer hier im Forum kommen musste war ja mal wieder klar...

                      Da spricht der Neid des Deppen, der zwischen server- und clientseitig nicht unterscheiden kann.

                      gruß,
                      wahsaga

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

                      ...dass das vom größten Schlauschwätzer hier im Forum kommen musste war ja mal wieder klar...

                      Wahsagas Analogie war absolut trefflich und treffend. :-)

                      Das "Problem" liegt einzig bei *dir*.

                      Gruß, Cybaer

                      --
                      Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
        4. Hi,

          ...jetzt noch ne Frage:
          Gibt es jetzt also für mein Problem ne Lösung, außer mit Java-Script? Wenn ja, wie sieht diese Lösung aus? Wie es schon erwähnt ist, wenn JS deaktiviert ist, kommt ja gar nichts. Die Variante mit einem animierten Gif finde ich dann doch eher uncool.
          Das ist doch komisch, dass man sämtliches und alles mit Php realisieren kann und wenn es darum geht, von 45 rückwärts zu zählen, ist Schicht im Schacht!!??

          mit PHP ist es durchaus möglich von 45 rückwärts runter zu zählen, z. B. in Kommandozeilen- oder PHPGTK-Applikationen. Mit PHP ist es nicht möglich, vom Server aus life die Ausgaben am Client zu beeinflussen. Das hat nichts mit PHP zu tun, sondern mit dem Prinzip von HTTP.

          (Wobei es theoretisch mit dem Instandhalten der HTTP-Verbindung und gaaanz vielen flush()-Aufrufen schon möglich wäre, das ist aber nicht sehr elegant...)

          Schöne Grüße
          Julian

          --
          "Real programmers can write assembly code in any language." - Larry Wall
  2. Hi,

    Ich habe sehr intensiv gegoogelt und bin eben auf einen Beitrag gestoßen, in dem es hieß, dass so etwas nicht mit Php möglich wäre, sondern nur mit Java bzw. JS. Ist das so korrekt?

    Nein, das ist nicht ganz korrekt.

    Du könntest auch einen (randlosen) (I)Frame verwenden. In diesem Frame ist eine separate PHP-Datei, die mittels META-Refresh und Zeit-Parameter (abgeglichen mit der tatsächlichen Serverzeit) herunterzählt.

    Wenn ja, warum?

    Mangelnde Phantasie der Coder. >;->

    Aber so etwas macht man üblicherweise auch wirklich mit DHTML ... =;-)

    ... denn die Frame-Nethode hat einige Nachteile wie Timing-Abgleich/Laufruhe oder "Nachladeflackern", was sich ggf. nur im IE mittels der "fließenden Seitenübergänge" vermeiden ließe (oder natürlich generell mittels JS).

    Gruß, Cybaer

    --
    Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
  3. Ahoi Jazz,

    Ich habe sehr intensiv gegoogelt und bin eben auf einen Beitrag gestoßen, in dem es hieß, dass so etwas nicht mit Php möglich wäre, sondern nur mit Java bzw. JS. Ist das so korrekt? Wenn ja, warum?

    hab mich nochnicht alzu ehr damit beschäftigt aber für PHP gibts ja di
    gdlib oder so ähnlich, mit der kann man Grafiken erstellen, theoretisch
    müsste es doch also möglichsein ein animiertes Gif zu erstellen welches
    quasi runterzählt.

    MfG

    --
    Alle Angaben wie immer ohne Gewähr
    LEISE IST SCHEISSE!
    1. Ahoi Jazz,

      Ich habe sehr intensiv gegoogelt und bin eben auf einen Beitrag gestoßen, in dem es hieß, dass so etwas nicht mit Php möglich wäre, sondern nur mit Java bzw. JS. Ist das so korrekt? Wenn ja, warum?

      hab mich nochnicht alzu ehr damit beschäftigt aber für PHP gibts ja di
      gdlib oder so ähnlich, mit der kann man Grafiken erstellen, theoretisch
      müsste es doch also möglichsein ein animiertes Gif zu erstellen welches
      quasi runterzählt.

      Aber nur quasi. Du wirst es kaum schaffen, ein animiertes Gif zu erstellen, das in allen Browsern in derselben Geschwindigkeit abläuft. Der Sinn eines Countdowns ist, dass er genau im Sekundentakt runterzählt. Das ist AFAIK nicht möglich.

      mfg
        Horst

      1. Ahoi Horst,

        Aber nur quasi. Du wirst es kaum schaffen, ein animiertes Gif zu erstellen, das in allen Browsern in derselben Geschwindigkeit abläuft.

        Also ich kann in meinem bisher verwendeten Programm zur erstellung von
        animierten gifs die anzeige dauer der einzelnen Bilder in ms einstellen
        ich vermute es sind millisekunden. ich kann dort auch einstellen ob es
        einmal abgespielt werden soll oder in schleife.

        MfG

        --
        Alle Angaben wie immer ohne Gewähr
        LEISE IST SCHEISSE!
        1. Hi,

          Also ich kann in meinem bisher verwendeten Programm zur erstellung von
          animierten gifs die anzeige dauer der einzelnen Bilder in ms einstellen
          ich vermute es sind millisekunden. ich kann dort auch einstellen ob es
          einmal abgespielt werden soll oder in schleife.

          Auch nicht schlecht. :)

          Soviel also zum Thema "mangelnde Phantasie". >;->

          Gruß, Cybaer

          --
          Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
          1. Ahoi Cybaer,

            Auch nicht schlecht. :)

            Soviel also zum Thema "mangelnde Phantasie". >;->

            Wie gesagt, ich hab keine ahnung ob das mit dem Grafiktool von PHP
            geht, weis nichtmal ob man damit überhaupt animierte GIFs erzeugen
            kann, wobei animierte GIFs ja eigentlich nicht verwendet werden sollen
            so wäre dies doch eine möglichkeit die Useability höher zu setztenm,
            denn wenn JS nicht aktiviert ist kommt garnix.

            MfG

            --
            Alle Angaben wie immer ohne Gewähr
            LEISE IST SCHEISSE!
            1. Hi,

              Wie gesagt, ich hab keine ahnung ob das mit dem Grafiktool von PHP
              geht, weis nichtmal ob man damit überhaupt animierte GIFs erzeugen
              kann,

              Programmierbar ist alles. :-) "Nur" eine Frage des Aufwands. ;)

              so wäre dies doch eine möglichkeit die Useability höher zu setztenm,
              denn wenn JS nicht aktiviert ist kommt garnix.

              Die Grafikdarstellung könnte auch abgeschaltet sein. ;-)

              Aber für die, die alles abschalten, müßte in einem solchen Fall eben ein Hinweis erfolgen a la: "Jetzt ist es x Uhr - in y Sekunden, also um (x+y) Uhr wird ...". ;-)

              Gruß, Cybaer

              --
              Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!