计算时间

enchantment 2008-04-14 08:17:56
我要做一种网吧计时系统,多用户分别计时,请问分别计时时间如何实现,请给个思路吧,谢谢了
...全文
286 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
meiZiNick 2008-04-30
  • 打赏
  • 举报
回复
关注 接分
悟空师傅来了 2008-04-23
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 Dersak 的回复:]
结帐时间 - 登录时间
[/Quote]

都取服务器时间
I_am_Z 2008-04-15
  • 打赏
  • 举报
回复
结帐时间 - 登录时间
SKY_4K_PPM 2008-04-15
  • 打赏
  • 举报
回复
定义一个函数of_relativedatetime(datetime adtm_start,long al_offset)returns datetime
datetime ldtm_null
date ld_sdate
time lt_stime
long ll_date_adjust
long ll_time_adjust,ll_time_test
if isnull(adtm_start) or isnull(al_offset) then
setnull(ldtm_null)
return ldtm_null
end if
if not of_isvalid(adtm_start) then
return ldtm_null
end if
ld_sdate=date(adtm_start)
lt_stime=time(adtm_start)
ll_date_adjust=al_offset/86400
ll_time_adjust=mod(al_offset,86400)

ld_sdate=relativedate(ld_sdate,ll_date_adjust)

if ll_time_adjust>0 then
ll_time_test=secondsafter(lt_stime,time('23:59:59'))
if ll_time_test>ll_time_adjust then
ld_sdate=relativedate(ld_sdate,1)
ll_time_adjust=ll_time_adjust - ll_time_test - 1
lt_stime=time('00:00:00')
end if
lt_stime=relativetime(lt_stime,ll_time_test)
elseif ll_time_adjust<0 then
ll_time_test=secondsafter(lt_stime,time('00:00:00'))
if ll_time_test>ll_time_adjust then
ld_sdate=relativedate(ld_sdate, -1)
ll_time_adjust=ll_time_adjust - ll_time_test +1
lt_stime=time('23:59:59')
end if
lt_stime=relativetime(lt_stime,ll_time_test)
end if
return datetime(ld_sdate,lt_stime)
pcwe2002 2008-04-14
  • 打赏
  • 举报
回复
呵,分别记录用户登陆时间,然后用服务器时间减去当前时间
用daysafter先取得天数,再用secondsafter取得时间相差秒数,
用24 * 天数 + 秒数 /60就是想要的小时数
dawugui 2008-04-14
  • 打赏
  • 举报
回复
[Quote=引用楼主 enchantment 的帖子:]
我要做一种网吧计时系统,多用户分别计时,请问分别计时时间如何实现,请给个思路吧,谢谢了
[/Quote]
用当前时间(或结束时间)减去各自的登录即可.

PB 好象是用 dateafter...
sql server用datediff..

740

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 脚本语言
社区管理员
  • 脚本语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧