源码网,源码论坛,源码之家,商业源码,游戏源码下载,discuz插件,棋牌源码下载,精品源码论坛

 找回密码
 立即注册
查看: 688|回复: 48

[ASP编程] asp实现的可以提醒生日的几种方法附代码

[复制链接]

7万

主题

861

回帖

32万

积分

论坛元老

Rank: 8Rank: 8

积分
329525
发表于 2008-6-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 < days  
                          response.write rs("name")%> 
                          response.write "<font color="#FF0000">" 
                          response.write rs("birthday")&"、</font>"
                    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%>
<script language="JavaScript"> 
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) 

</script> 
<DIV id=eMeng style='BORDER-RIGHT: #455690 1px solid; BORDER-TOP: #a6b4cf 1px solid; Z-INDEX:99999; LEFT: 0px; VISIBILITY: hidden; BORDER-LEFT: #a6b4cf 1px solid; WIDTH: 180px; BORDER-BOTTOM: #455690 1px solid; POSITION: absolute; TOP: 0px; HEIGHT: 116px; BACKGROUND-COLOR: #c9d3f3'>
<TABLE style='BORDER-TOP: #ffffff 1px solid; BORDER-LEFT: #ffffff 1px solid' cellSpacing=0 cellPadding=0 width='100%' bgColor=#cfdef4 border=0><TBODY>
<TR>
     <TD style='FONT-SIZE: 12px; BACKGROUND-IMAGE: url(msgTopBg.gif); COLOR: #0f2c8c' width=30 height=24></TD> 
     <TD style='FONT-WEIGHT: normal; FONT-SIZE: 12px; BACKGROUND-IMAGE: url(msgTopBg.gif); COLOR: #1f336b; PADDING-TOP: 4px;PADDING-left: 4px' vAlign=center width='100%'> 生日提示:</TD>
     <TD style='BACKGROUND-IMAGE: url(msgTopBg.gif); PADDING-TOP: 2px;PADDING-right:2px' vAlign=center align=right width=19><span title=关闭 style='CURSOR: hand;color:red;font-size:12px;font-weight:bold;margin-right:4px;' onclick=closeDiv() >×</span><!-- <IMG title=关闭 style='CURSOR: hand' onclick=closeDiv() hspace=3 src='msgClose.jpg'> --></TD> 
</TR> 
<TR>
     <TD style='PADDING-RIGHT: 1px; BACKGROUND-IMAGE: url(1msgBottomBg.jpg); PADDING-BOTTOM: 1px' colSpan=3 height=90> <DIV style='BORDER-RIGHT: #b9c9ef 1px solid; PADDING-RIGHT: 13px; BORDER-TOP: #728eb8 1px solid; PADDING-LEFT: 13px; FONT-SIZE: 12px; PADDING-BOTTOM: 13px; BORDER-LEFT: #728eb8 1px solid; WIDTH: 100%; COLOR: #1f336b; PADDING-TOP: 18px; BORDER-BOTTOM: #b9c9ef 1px solid; HEIGHT: 100%'>近期将要过生日的会员有:<BR><BR> <DIV align=center style='word-break:break-all'>
<%i=1
do while not rs.eof
Response.Write("<a href='/System/AdmMember/Edit.asp?id="&rs(0)&"' title=''><font color='red'>"&rs(1)&"</font></a>("&month(rs(2))&"-"&day(rs(2))&")  ")
if i mod 2 =0 then response.Write("</br>")
rs.movenext
i=i+1
loop%></DIV></DIV> </TD>
</TR> 
</TBODY> 
</TABLE> 
</DIV> 
<% end if
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
%>
回复

使用道具 举报

8

主题

2万

回帖

52

积分

注册会员

Rank: 2

积分
52
发表于 2022-8-16 11:48:50 | 显示全部楼层
来看看!!!
回复 支持 反对

使用道具 举报

4

主题

2万

回帖

316

积分

中级会员

Rank: 3Rank: 3

积分
316
发表于 2022-11-2 15:26:52 | 显示全部楼层
看看看看
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

120

积分

注册会员

Rank: 2

积分
120
发表于 2023-6-28 16:34:37 | 显示全部楼层
看到这帖子真是高兴!
回复 支持 反对

使用道具 举报

11

主题

2万

回帖

300

积分

中级会员

Rank: 3Rank: 3

积分
300
发表于 2023-8-23 09:37:32 | 显示全部楼层
先把创新班才能下班才能下班
回复 支持 反对

使用道具 举报

8

主题

2万

回帖

52

积分

注册会员

Rank: 2

积分
52
发表于 2023-8-24 15:11:16 | 显示全部楼层
我找了挺久终于找到了
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2023-9-9 11:25:02 | 显示全部楼层
挺不错的东西
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

55

积分

注册会员

Rank: 2

积分
55
发表于 2023-9-17 14:12:41 | 显示全部楼层
挺不错的东西
回复 支持 反对

使用道具 举报

2

主题

2万

回帖

473

积分

中级会员

Rank: 3Rank: 3

积分
473
发表于 2024-3-15 11:08:27 | 显示全部楼层
加快速度很快就撒谎
回复 支持 反对

使用道具 举报

0

主题

2万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2024-6-8 14:29:31 | 显示全部楼层
1312315458748777
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

手机版|小黑屋|网站地图|源码论坛 ( 海外版 )

GMT+8, 2024-11-23 20:06 , Processed in 0.187331 second(s), 45 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表