response.Write "<table border=1>"
sql="select * from utable order by username,date "
set rs=server.CreateObject("adodb.recordset")
rs.open sql,conn,1,3
do while not rs.eof
response.Write "<tr>"
response.Write "<td>"&rs("ID")&"</td><td>"&rs("username")&"</td><td bgcolor='"&sub_utable(rs("username"),rs("date"))&"'>"&rs("date")&"</td>"
response.Write "</tr>"
rs.movenext
loop
response.Write "</table>"
function sub_utable(us,da)
flag=0
sub_utable=""
sql1="select * from utable where username='"&us&"' and datediff('d','"&da&"',[date])=2 order by date "
set rs1=server.CreateObject("adodb.recordset")
rs1.open sql1,conn,1,1
if rs1.recordcount>0 then flag=flag+1 else flag=0
rs1.close:set rs1=nothing
sql1="select * from utable where username='"&us&"' and datediff('d','"&da&"',[date])=1 order by date "
set rs1=server.CreateObject("adodb.recordset")
rs1.open sql1,conn,1,1
if rs1.recordcount>0 then flag=flag+1 else flag=0
rs1.close:set rs1=nothing
if flag>=2 then sub_utable="red":exit function
sql1="select * from utable where username='"&us&"' and datediff('d','"&da&"',[date])=-1 order by date "
set rs1=server.CreateObject("adodb.recordset")
rs1.open sql1,conn,1,1
if rs1.recordcount>0 then flag=flag+1 else flag=0
rs1.close:set rs1=nothing
if flag>=2 then sub_utable="red":exit function
sql1="select * from utable where username='"&us&"' and datediff('d','"&da&"',[date])=-2 order by date "
set rs1=server.CreateObject("adodb.recordset")
rs1.open sql1,conn,1,1
if rs1.recordcount>0 then flag=flag+1 else flag=0
rs1.close:set rs1=nothing
if flag>=2 then sub_utable="red":exit function
end function