kostenloser Webspace werbefrei: lima-city


Problem Countdownscript

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    thehidden

    thehidden hat kostenlosen Webspace.

    Hallo, ich stecke momentan fest, grund habe keine grossartigen Java kenntnisse und versuche folgendes. Grund aufbau ist ein Countdown script was ohne eigene edition einwandfrei funktioniert. Doch habe ich vor das dieses Scipt die verbliebene Ceountdownzeit mittels serverzeit statt der clientzeit ausrechnen soll.

    beispiel.php

    <?
    $Javascriptzeit = date("D M d H:i:s ");
    $Javascriptzeit .= "UTC";
    $Javascriptzeit .= date("O Y");
    ?>
    <head>
    <title>Ein Countdown mit JavaScript</title>
    <meta name="robots" content="noindex,nofollow">
    <style type="text/css">body{background-color:#ffffff};input {background-color:#ffffff;border-width:1};p{font-size:80%}</style>

    <script language="JavaScript">
    var jahr=2222, monat=2, tag=22, stunde=22, minute=22, sekunde=22; // Ziel-Datum in MEZ
    var zielDatum=new Date(jahr,monat-1,tag,stunde,minute,sekunde);

    function countdown() {
    startDatum=new Date("<?php echo $Javascriptzeit; ?>");


    // Countdown berechnen und anzeigen, bis Ziel-Datum erreicht ist
    if(startDatum<zielDatum) {

    var jahre=0, monate=0, tage=0, stunden=0, minuten=0, sekunden=0;

    // Jahre
    while(startDatum<zielDatum) {
    jahre++;
    startDatum.setFullYear(startDatum.getFullYear()+1);
    }
    startDatum.setFullYear(startDatum.getFullYear()-1);
    jahre--;

    // Monate
    while(startDatum<zielDatum) {
    monate++;
    startDatum.setMonth(startDatum.getMonth()+1);
    }
    startDatum.setMonth(startDatum.getMonth()-1);
    monate--;

    // Tage
    while(startDatum.getTime()+(24*60*60*1000)<zielDatum) {
    tage++;
    startDatum.setTime(startDatum.getTime()+(24*60*60*1000));
    }

    // Stunden
    stunden=Math.floor((zielDatum-startDatum)/(60*60*1000));
    startDatum.setTime(startDatum.getTime()+stunden*60*60*1000);

    // Minuten
    minuten=Math.floor((zielDatum-startDatum)/(60*1000));
    startDatum.setTime(startDatum.getTime()+minuten*60*1000);

    // Sekunden
    sekunden=Math.floor((zielDatum-startDatum)/1000);

    // Anzeige formatieren
    (jahre!=1)?jahre=jahre+" Jahre, ":jahre=jahre+" Jahr, ";
    (monate!=1)?monate=monate+" Monate, ":monate=monate+" Monat, ";
    (tage!=1)?tage=tage+" Tage, ":tage=tage+" Tag, ";
    (stunden!=1)?stunden=stunden+" Stunden, ":stunden=stunden+" Stunde, ";
    (minuten!=1)?minuten=minuten+" Minuten und ":minuten=minuten+" Minute und ";
    if(sekunden<10) sekunden="0"+sekunden;
    (sekunden!=1)?sekunden=sekunden+" Sekunden":sekunden=sekunden+" Sekunde";

    document.countdownform.countdowninput.value=jahre+monate+tage+stunden+minuten+sekunden;

    setTimeout('countdown()',200);
    }
    // Anderenfalls alles auf Null setzen
    else document.countdownform.countdowninput.value="0 Jahre, 0 Monate, 0 Tage, 0 Stunden, 0 Minuten und 00 Sekunden";
    }
    </script>

    </head>

    <body scroll="auto" onload="countdown()">
    <br>
    <p>Die Spannung steigt. Nur noch</p>
    <form name="countdownform"><p><input size="75" name="countdowninput" style="background-color:#ffffff;border-width:0" onfocus="if(this.blur)this.blur()"></p></form>
    <p>bis zum 22.2.2222, 22:22:22 Uhr.</p>
    </body>


    Das Problem liegt hier:
    startDatum=new Date("<?php echo $Javascriptzeit; ?>"); << So nimmt sich das script zum rechnen die aktuelle Serverzeit!
    startDatum=new Date(); <<So nimmt sich das script die client zeit der jeweiligen nutzer.
    Mit der clientzeit funktionier das script und zählt den countdown live runter, mit der serverzeit aber rechnet er richtig doch der countdown läuft nicht, erst nach aktualisierung im browser ändern sich die zahlen.

    Kann mir hier jemand helfen?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. e********l

    kann dir leider nicht helfen, denn es ist das falsche Forum. Hier geht es um Java, nicht JavaScript.
  4. p**i

    *hier mal aufräumt und dieses Thema in den entsprechenden Forenteil packt*
  5. Autor dieses Themas

    thehidden

    thehidden hat kostenlosen Webspace.

    Ohh tut mir leid, ich hab von java so gut wie keinen Plan. Das problem habe ich anders gelöst. Die rechnung ist gedacht für ein browsergame. Die zeitrechnung habe ich komplett in php umgestrickt und gebe mittels java script nur noch die restzeit aus, fuktioniert so besser denk ich mal ;)
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!