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

%>

时间: 2024-08-01 01:51:25

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

asp实现的可以提醒生日的几种方法附代码_应用技巧

asp生日自动提醒小程式 用ASP编写,调试通过,使用方便-asp birthday automatically remind small programs with the preparation of ASP, debug, easy to use方法一: 最初写的一个用于班级网站的最近一个月同学生日的提醒小程序.虽然不怎么样,而且很乱,但是最起码是自己动脑筋去想的,所以我比较看重.ASP程序虽然有好多可以借鉴人家的.但是我想更多时候,我们应该在经典上有所突出,有所创新那不至于默守陈规而无永

ASP.NET页面间数据传递的9种方法

本文我们将讨论的是ASP.NET页面间数据传递的几种方法,对此希望能帮助大家正确的理解ASP.NET页面间数据传递的用处以及便利性. 0.引言 Web页面是无状态的, 服务器对每一次请求都认为来自不同用户,因此,变量的状态在连续对同一页面的多次请求之间或在页面跳转时不会被保留.在用ASP.NET 设计开发一个Web系统时, 遇到一个重要的问题是如何保证数据在页面间进行正确.安全和高效地传送,Asp.net 提供了状态管理等多种技术来解决保存和传递数据问题,以下来探讨.NET 下的解决此问题的各种

ASP.NET DataTable去掉重复行的2种方法

 这篇文章主要介绍了ASP.NET DataTable去掉重复行的2种方法,本文直接给出去重代码,需要的朋友可以参考下     第一种,使用Linq查询表达式,code如下 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 DataTable testtable = new DataTable(); testtable.Columns.Add("ID"); testtable.Columns.Add("ProductName&quo

ASP.NET页面之间传递参数的几种方法

  Asp.net页面之间传递参数的几种方法 第一种方法:通过URL链接地址传递 send.aspx: protected void Button1_Click(object sender, EventArgs e) { Request.Redirect("Default2.aspx?username=honge"); } receive.aspx: string username = Request.QueryString["username"]; 这样可以得到参

将Asp.Net网站发布到IIS的四种方法

  将Asp.Net网站发布到IIS的四种方法及注意事项: 不管是那种发布方法, 第一件事情是让IIS能够支持asp.net程序, 默认IIS是不开器asp.net网站程序的支持的.在IIS中的"Web服务扩展"中, 确保"ASP.NET v2.0.50727"被启用. 其他的可以保持禁用状态. 发布方法1:---直接复制到IIS目录发布目录中(C:Inetpubwwwroot) a. 将经过VS调试且运行正常的ASP.NET网站项目的文件夹复制到IIS的wwwro

Asp.Net alert弹出提示信息的几种方法总结

 本篇文章主要是对Asp.Net alert弹出提示信息的几种方法进行了总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助 1.ClientScript.RegisterStartupScript(GetType(),"message","<script>alert('第一种方式,无白屏!');</script>");   2.HttpContext.Current.Response.Write("<script>a

ASP.NET页面间的传值的几种方法

asp.net|页面|asp.net ASP.NET WEB FORMS 给开发者提供了极好的事件驱动开发模式.然而这种简单的应用程序开发模式却给我们带来了一些小问题,举个例子,在传统的ASP应用程序中,你能够通过POST方法很容易的把一个值或多个值从一个页面传送到另一个页面,用同样的方法在ASP.NET中实现有点麻烦.在这里,我们可以通过其他方式来解决这种情形.ASP.NET为我们提供了三种方式,一种是可以通过用QueryString来传送相应的值,再一种是通过session变量来传送相应的值

ASP中页面限权访问的两种方法

访问|页面 在设计网页时,经常遇到某些页面需限权访问的情况.比如,一个公司的某些产品只让某一或某些供应商或客户浏览.那么,我们如何实现这一功能呢?本文,笔者将向读者介绍几种限制客户访问权限的方法.   通常,我们在设计过程中会面临三种情况:某一页面只让某一用户浏览.某一页面只让某些用户浏览和某些页面只让某些用户浏览.第一种情况很简单,笔者不再叙述,下文将详细介绍后两种情况的设计方法.    一.某一页面只让某些用户浏览 将这些客户的信息保存在数据库中,若能在数据库中检索到客户输入的姓名和密码就允

ASP.NET对无序列表批量操作的三种方法小结_实用技巧

本篇介绍服务器端ASP.NET批量操作基于原生html标签的无序列表的三种方法. 方法一,将li元素做成html控件,加上id,用FindControl方法. aspx代码: 复制代码 代码如下: <form id="form1" runat="server"> <ul> <li id="li1" runat="server">初始值1</li> <li id="