Avatar billede andersasp Nybegynder
19. oktober 2011 - 20:10 Der er 3 kommentarer og
1 løsning

dato fra server og ikke egen pc

Hejsa,

Jeg har et script som laver en countdown fra en given dato.. denne virker rigtig godt, men lige nu tager den datoen fra ens egen pc, og det den skal gøre er at tage datoen fra den server hvor den er installeret.. er dette muligt? hvor hvis ja hvordan kan man gøre dette?

på forhånd tak

<script type="text/javascript">
//######################################################################################
// Author: ricocheting.com
// Version: v2.0
// Date: 2011-03-31
// Description: displays the amount of time until the "dateFuture" entered below.

// NOTE: the month entered must be one less than current month. ie; 0=January, 11=December
// NOTE: the hour is in 24 hour format. 0=12am, 15=3pm etc
// format: dateFuture1 = new Date(year,month-1,day,hour,min,sec)
// example: dateFuture1 = new Date(2003,03,26,14,15,00) = April 26, 2003 - 2:15:00 pm

dateFuture1 = new Date(<%=year(HCendtime)%>,<%=whatmonth%>,<%=day(HCendtime)%>,<%=hour(HCendtime)%>,<%=minute(HCendtime)%>,00);
dateFuture2 = new Date(<%=year(HCendtime)%>,<%=whatmonth%>,<%=day(HCendtime)%>,<%=hour(HCendtime)%>,<%=minute(HCendtime)%>,00);

// TESTING: comment out the line below to print out the "dateFuture" for testing purposes
//document.write(dateFuture +"<br />");


//###################################
//nothing beyond this point
function GetCount(ddate,iid){

    dateNow = new Date();    //grab current date
    amount = ddate.getTime() - dateNow.getTime();    //calc milliseconds between dates
    delete dateNow;

    // if time is already past
    if(amount < 0){
        document.getElementById(iid).innerHTML="Now!";
    }
    // else date is still good
    else{
        days=0;hours=0;mins=0;secs=0;out="";

        amount = Math.floor(amount/1000);//kill the "milliseconds" so just secs

        days=Math.floor(amount/86400);//days
        amount=amount%86400;

        hours=Math.floor(amount/3600);//hours
        amount=amount%3600;

        mins=Math.floor(amount/60);//minutes
        amount=amount%60;

        secs=Math.floor(amount);//seconds

        if(days != 0){out += days +""+((days==1)?"day":"days")+" ";}
        if(hours != 0){out += hours +""+((hours==1)?"h":"h")+" ";}
        out += mins +""+((mins==1)?"m":"m")+" ";
        out += secs +""+((secs==1)?"s":"s")+" ";
        out = out.substr(0,out.length-2);
        document.getElementById(iid).innerHTML=out;

        setTimeout(function(){GetCount(ddate,iid)}, 1000);
    }
}

window.onload=function(){
    GetCount(dateFuture1, 'countbox1');
    GetCount(dateFuture2, 'countbox2');
    //you can add additional countdowns here (just make sure you create dateFuture2 and countbox2 etc for each)
};
</script>
Avatar billede iGirls Praktikant
19. oktober 2011 - 20:13 #1
Hej, andersasp.

Javascript er Clientside og ikke et server side script.

Du kan eventuelt bruge noget Server-side script, og derefter smide det ind vha. Javascript.
Avatar billede jokkejensen Novice
19. oktober 2011 - 21:57 #2
dateFuture1 = new Date(<%=year(HCendtime)%>,<%=whatmonth%>,<%=day(HCendtime)%>,<%=hour(HCendtime)%>,<%=minute(HCendtime)%>,00);

Det ligner ikke clientscript....
Avatar billede andersasp Nybegynder
24. oktober 2011 - 12:30 #3
Hejsa,

beklager min sene tilbagemelding.. Det som scriptet gør er at lave en nedtælling fra dagens dato til en given dato, som jeg har sat ind selv...

Problemet er at den nu tæller ud fra en enkelte brugers dato/tid, hvilket vil sige at man ikke kan være sikker på at denne er korrekt i forhold til den dato man gerne vil tælle ned fra!!

Men hvordan kan jeg smide noget server-side script ind?
kan man det ligesom jeg har gjort her?
dateFuture1 = new Date(<%=year(HCendtime)%>,<%=whatmonth%>,<%=day(HCendtime)%>,<%=hour(HCendtime)%>,<%=minute(HCendtime)%>,00);


det er vel denne jeg skal have ændret:

dateNow = new Date();    //grab current date

På forhånd tak
Avatar billede jokkejensen Novice
25. oktober 2011 - 08:35 #4
Hej Anders

Smid spørgsmålet i asp og luk det her, det er serverscript og ikke javascript.

Refere i asp kategorien til du skal bruge:

dateNow = new Date(year, month, day, hours, minutes, seconds, milliseconds);

(http://www.w3schools.com/jsref/jsref_obj_date.asp)

Hvor du hhv skal bruge år, måned, dag, timer, minutter, sekunder og millisekunder fra asp. referere evt bare til denne tråd, mit vb/asp er alt for rådent til jeg kan give et korrekt svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester