java实现生日提醒_asp实现的可以提醒生日的几种方法附代码

asp实现的可以提醒生日的几种方法附代码

更新时间:2008年06月20日 08:44:52   作者:

asp提醒生日的原理一般就是把用户的出生日期和当前日期对比,如果少于几天则提醒显示,下面是几种方法的实现

asp生日自动提醒小程式 用ASP编写,调试通过,使用方便-asp birthday automatically remind small programs with the preparation of ASP, debug, easy to use

方法一:

最初写的一个用于班级网站的最近一个月同学生日的提醒小程序。虽然不怎么样,而且很乱,但是最起码是自己动脑筋去想的,所以我比较看重。ASP程序虽然有好多可以借鉴人家的。但是我想更多时候,我们应该在经典上有所突出,有所创新那不至于默守陈规而无永远只能做一个平凡的程序员。

dim     daydif

dim     days '定义查询前后多少天内生日的同学,如60则查询前一个月后下一个月生日的同学名单。

SQL="Select name,brithday from class "

Set rs=server.CreateObject("ADODB.RecordSet")

rs.Open SQL,con,1,1

for i=1 to rs.recordcount     '读出所有的数据

if rs.eof then exit for

daydif=abs(datediff("d",date,rs("birthday")) )mod 365

if daydif 

response.write rs("name")%>

response.write ""

response.write rs("birthday")&"、"

end if

rs.movenext

loop

rs.Close

Set rs=nothing

%>

方法二:

days1=split(date(),"-")

days2=split(DateAdd("d",5,date()),"-")

sql="select [id],Memberid,birthday from customers "

if days1(1)<>days2(1) then

sql=sql+" where (month(birthday) = '"&days1(1)&"' or month(birthday)='"&days2(1)&"')"

else

sql=sql+" where month(birthday) = '"&days1(1)&"'"

end if

sql=sql+" and day(birthday) between '"&days1(2)&"' and '"&days2(2)&"'"

'Response.Write(sql)

set conn=server.CreateObject("ADODB.connection")

conn.open connstr

set rs=Conn.execute(sql)

if not rs.eof then%>

window.onload = getMsg;

window.onresize = resizeDiv;

window.onerror = function(){}

//短信提示使用(asilas添加)

var divTop,divLeft,divWidth,divHeight,docHeight,docWidth,objTimer,i = 0;

function getMsg()

{

try{

divTop = parseInt(document.getElementById("eMeng").style.top,10)

divLeft = parseInt(document.getElementById("eMeng").style.left,10)

divHeight = parseInt(document.getElementById("eMeng").offsetHeight,10)

divWidth = parseInt(document.getElementById("eMeng").offsetWidth,10)

docWidth = document.body.clientWidth;

docHeight = document.body.clientHeight;

document.getElementById("eMeng").style.top = parseInt(document.body.scrollTop,10) + docHeight + 10;// divHeight

document.getElementById("eMeng").style.left = parseInt(document.body.scrollLeft,10) + docWidth - divWidth

document.getElementById("eMeng").style.visibility="visible"

objTimer = window.setInterval("moveDiv()",10)

}

catch(e){}

}

function resizeDiv()

{

i+=1

if(i>500) closeDiv()

try{

divHeight = parseInt(document.getElementById("eMeng").offsetHeight,10)

divWidth = parseInt(document.getElementById("eMeng").offsetWidth,10)

docWidth = document.body.clientWidth;

docHeight = document.body.clientHeight;

document.getElementById("eMeng").style.top = docHeight - divHeight + parseInt(document.body.scrollTop,10)

document.getElementById("eMeng").style.left = docWidth - divWidth + parseInt(document.body.scrollLeft,10)

}

catch(e){}

}

function moveDiv()

{

try

{

if(parseInt(document.getElementById("eMeng").style.top,10) <= (docHeight - divHeight + parseInt(document.body.scrollTop,10)))

{

window.clearInterval(objTimer)

objTimer = window.setInterval("resizeDiv()",1)

}

divTop = parseInt(document.getElementById("eMeng").style.top,10)

document.getElementById("eMeng").style.top = divTop - 1

}

catch(e){}

}

function closeDiv()

{

document.getElementById('eMeng').style.visibility='hidden';

if(objTimer) window.clearInterval(objTimer)

}

 生日提示:×
 
近期将要过生日的会员有:

do while not rs.eof

Response.Write(""&rs(1)&"("&month(rs(2))&"-"&day(rs(2))&")  ")

if i mod 2 =0 then response.Write("")

rs.movenext

i=i+1

loop%>

 

rs.close

set rs=nothing

conn.close()

set conn=nothing %>

方法三:

sql server:

If month(Now())=12 and day(now())>24 Then

sSql = "select FoodID, Strname, TimeID from Tfood where ( datediff(d,getdate(),dateadd(year,datediff(Year,TimeID,GetDate()),TimeID))<=200 and datediff(d,getdate(),dateadd(year,datediff(Year,TimeID,GetDate()),TimeID))>=0 ) Or ( datediff(d,getdate(),dateadd(year,datediff(Year,TimeID,GetDate())+1,TimeID))<=200 and datediff(d,getdate(),dateadd(year,datediff(Year,TimeID,GetDate())+1,TimeID))>=0 )"

Else

sSql = "select FoodID, Strname, TimeID from Tfood where ( datediff(d,getdate(),dateadd(year,datediff(Year,TimeID,GetDate()),TimeID))<=200 and datediff(d,getdate(),dateadd(year,datediff(Year,TimeID,GetDate()),TimeID))>=0 )"

End If

%>

Access:

If month(Now())=12 and day(now())>24 Then

sSql = "SELECT *

FROM customers

WHERE ( datediff('d',date(),dateadd('yyyy',datediff('yyyy',Birthday,date()),Birthday))<=5 and datediff('d',date(),dateadd('yyyy',datediff('yyyy',Birthday,date()),Birthday))>=0 ) Or ( datediff('d',date(),dateadd('yyyy',datediff('yyyy',Birthday,date())+1,Birthday))<=5 and datediff('d',date(),dateadd('yyyy',datediff('yyyy',Birthday,date())+1,Birthday))>=0 );"

Else

sSql = "SELECT *

FROM customers

WHERE (DateDiff('d',date(),DateAdd('yyyy',DateDiff('yyyy',[Birthday],date()),[Birthday]))<=5 And DateDiff('d',date(),DateAdd('yyyy',DateDiff('yyyy',[Birthday],date()),[Birthday]))>=0);"

End If

%>

相关文章

1a1b05c64693fbf380aa1344a7812747.png

asp com接口的调用代码。 需要的朋友可以参考下。2009-10-10

4f55910a645b073bc4fc65dc10dc14bd.png

学习asp的朋友需要了解下2008-11-11

0ea3c7666119d5615e582f823fb3fad6.png

asp时间加减运算 和转换问题2009-03-03

4f96a78db829b1556ff16de21e013c7a.png

asp实现表格3列5行...2006-07-07

8cc1031babc6aff2319f1c6af8544aa0.png

asp中COM组件中如何连接数据库的代码...2007-03-03

0c932a99bb7b6f23c937db507070cc7b.png

如何增加Referer功能--反向链接插件...2007-02-02

cca732bf65a93ed2ec0ac80c638460fe.png

有时候我们需要 延迟 下面的函数的执行,但不建议使用啊,最好能换个思路。2009-06-06

2d9f31f2af7b675a3d153d2b7f1035a7.png

ASP+XML留言板介绍...2006-11-11

b452cee8ec5cd9e58ab98eba17281e59.png

一个能对访问者进行编号、记录访问次数、IP、时间的统计制作实例,需要的朋友可以参考下2015-09-09

f4838ec7e2d4da28e0b57d4e852dadd4.png

Eval、Execute、ExecuteGlobal 这三个语句(函数)都是执行字符串表达式,不过它们之间又有所不同。2011-07-07

最新评论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值