怎样获取远程主机或者服务器的操作系统的当前时间?

怎样获取远程主机或者服务器的操作系统的当前时间?,第1张

远程获取服务器时间可同通过php的一个时间函数获取,用到的工具:notepad++,ftp,步骤如下:

通过notepad++写一个php文件另存为timephp。

2通过ftp上传到服务器一个网站目录下边,通过浏览器访问,结果如下:

注意事项:服务器必须安装php网站环境。

程序启动时,从数据库获取服务器时间,在客户端定义时间变量同步,然后客户端每次取时间从这个变量里面来,

建议还是不要1秒从数据库查询一次,当然如果是1分钟或者1小时,用timer也无所谓了

程序集 窗口程序集1

子程序 _按钮1_被单击

局部变量 XML对象, 对象

局部变量 时间文本, 文本型

按钮1禁止 = 真

如果真 (XML对象创建 (“MSXML2XMLHTTP”, ) = 假)

如果真 (XML对象创建 (“MicrosoftXMLHTTP”, ) = 假)

返回 ()

如果真结束

如果真结束

XML对象方法 (“open”, 编辑框2内容, 编辑框1内容, 假)

XML对象方法 (“send”, )

时间文本 = XML对象读文本属性 (“getResponseHeader”, “Date”)

标签1标题 = “当前服务器时间为:” + 到文本 (时间格式化 (时间文本))

按钮1禁止 = 假

子程序 时间格式化, 日期时间型

参数 时间文本, 文本型

局部变量 临时数组, 文本型, , "0"

局部变量 临时变量, 文本型

局部变量 时间变量, 日期时间型

局部变量 临时时间, 日期时间型

局部变量 日, 文本型

局部变量 月, 文本型

局部变量 年, 文本型

局部变量 时, 文本型

局部变量 分, 文本型

局部变量 秒, 文本型

临时数组 = 分割文本 (时间文本, “, ”, )

临时变量 = 临时数组 [2]

临时变量 = 子文本替换 (临时变量, “ GMT”, , , , 真)

清除数组 (临时数组)

临时数组 = 分割文本 (临时变量, “ ”, )

日 = 临时数组 [1]

判断开始 (临时数组 [2] = “Jan”)

月 = “01”

判断 (临时数组 [2] = “Feb”)

月 = “02”

判断 (临时数组 [2] = “Mar”)

月 = “03”

判断 (临时数组 [2] = “Apr”)

月 = “04”

判断 (临时数组 [2] = “Mar”)

月 = “05”

判断 (临时数组 [2] = “Jun”)

月 = “06”

判断 (临时数组 [2] = “Jul”)

月 = “07”

判断 (临时数组 [2] = “Aug”)

月 = “08”

判断 (临时数组 [2] = “Sep”)

月 = “09”

判断 (临时数组 [2] = “Oct”)

月 = “10”

判断 (临时数组 [2] = “Nov”)

月 = “11”

判断 (临时数组 [2] = “Dec”)

月 = “12”

默认

判断结束

年 = 临时数组 [3]

临时变量 = 临时数组 [4]

清除数组 (临时数组)

临时数组 = 分割文本 (临时变量, “:”, )

时 = 到文本 (到整数 (临时数组 [1]))

分 = 临时数组 [2]

秒 = 临时数组 [3]

时间变量 = 到时间 (年 + “/” + 月 + “/” + 日 + “/” + 时 + “/” + 分 + “/” + 秒)

时间变量 = 增减时间 (时间变量, #小时, 8) ' 转换为北京时间

返回 (时间变量)

如果想返回服务器日期,时间包括秒,请用<%=now()%>

这里附带下:<%=date()%>显示日期 例如:2006-6-30

<%=Time()%>显示时间 例如:21:12:12

正如楼上所说的,js只能操作客户端的东西。在客户端时刻显示并更新服务器的时间应该是不可能的,因为会由于网络延迟的因素使得时间不精确。

打个比方,可以使用ajax每秒钟获取服务器的时间,然后再显示出来,但是可能这个用户的网络延迟比较厉害,他请求的这个时间过了两三秒才返回给客户端,那这样更新时间就不精确了。

也可以这样,第一次从服务器那里获取时间,然后再客户端用js,每秒累加数,就是以获取服务器的那个时间为起掉,用客户端代码每秒累加这个时间

下面是公司的代码,调整成ADO控件,给你参考一下:

  function GetNetDate: TDateTime;

  begin

    with TADOQueryCreate(nil) do

    begin

      try

        Connection := ADOConnection1;  // 绑定数据库连接对象

        if SelfDBEServiceDBType = dtMSSQL then // 这里你自己处理一下,公司代码的意思是,如果当前数据库是MSSQL Server

          SQLAdd('SELECT GETDATE() AS CURDATE ')

        else SelfDBEServiceDBType = dtOracle then  // 如果当前数据库是Oracle

          SQLAdd('SELECT SysDate AS CURDATE FROM DUAL ');

        Open;

        Result := FieldByName('CURDATE')AsDateTime;

      finally

        Free;

      end;

    end;

  end;

 简单的说,MSSQL数据库,使用“Select GetDate() ”这样的SQL语句获取数据库服务器时间,而Oracle则使用“Select SysDate”这样的SQL语句。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 怎样获取远程主机或者服务器的操作系统的当前时间?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情