程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> 如何在網頁中顯示服務器時間(asp)

如何在網頁中顯示服務器時間(asp)

編輯:關於ASP編程

     在網頁上顯示時間,如果取的是用戶本機的時間,由於用戶的時間往往不准確,所以顯示的有問題。而服務器時間一般不會誤差太大,所以最好顯示服務器時間

    下面以asp+js為例說明。

    下面分析代碼結構,先是獲取服務器時間:

    <%
    d=Date()
    t=Time()
    %>
    var t0=new Date().getTime();
    var nyear=<%=Year(d)%>;
    var nmonth=<%=Month(d)%>;
    var nday=<%=Day(d)%>;
    var nwday=<%=WeekDay(d)%>-1;
    var nhrs=<%=Hour(t)%>;
    var nmin=<%=Minute(t)%>;
    var nsec=<%=Second(t)%>;
    //獲得本機時間和服務器時間之差
    var dectime=new Date(nyear,nmonth-1,nday,nhrs,nmin,nsec).getTime()-t0;
    nday=-1;
    //用於顯示時間的span
    document.write("<span id="clock" style="word-break:keep-all"></span>");
    //時間計算函數:
    function NewTick(){
    var noww=new Date();
    var t1=noww.getTime();
    noww.setTime(t1+dectime);
    if(noww.getDate()!=nday){
    nyear=noww.getFullYear();nmonth=noww.getMonth()+1;nwday=noww.getDay();nday=noww.getDate();
    }
    nhrs=noww.getHours();nmin=noww.getMinutes();nsec=noww.getSeconds();
    }
    //時間顯示函數:
    function Draw(){
    NewTick(); //先計算
    var s=nyear+'年'+nmonth+'月'+nday+'日 '+'星期'+cweekday(nwday)+' '+shapetime(nhrs,nmin,nsec);
    s+=" 農歷"+lmonth+"月"+lday;//顯示農歷
    document.getElementById("clock").innerHTML=s;
    //每隔500毫秒重新獲取一下本機時間:
    setTimeout("Draw()",500);
    }

    //開始顯示:
    Draw();

     

    其他問題:

    服務器獲取的時間不能在本地緩存,所以要在代碼中加入緩存控制函數;
    還要防止其他網站盜鏈你的服務器時間代碼,所以要加入防盜鏈函數。
    如果需要顯示農歷,還需要加入農歷運算函數。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved