Ir para conteúdo
Fórum Script Brasil
  • 0

Calendario Eventos Com Db


Eli@ne

Pergunta

Ola pessoal

antes de vim aqui já rodei toda internet e não encontrei essa mia solusao

e o pior é que é algo que parece ser tão simples

este é o meu calendario

<%

Option Explicit

'EM TODOS OS PROGRAMAS

'COLOCAR ESTE COMANDO,

'POIS FICA MAIS FÁCIL

'ACHAR UM ERRO

Session.LCID = 1046

'Deixa tudo no formato brasileiro

%>

<html>

<body>

<%

dim dt 'Variável que controla a Data

if request("dt") = empty then

dt = NOW() 'Traz data e hora

else

dt = request("dt")

end if

dim pd 'Variável do primeiro dia

dim ud 'Variável do último dia

pd = DateSerial(year(dt),month(dt),1)

ud = DateSerial(year(dt),month(dt)+1,1)-1

dim ma 'Mês anterior ao atual

dim mp 'Mês posterior ao atual

ma = DateSerial(year(dt),month(dt)-1,1) 'Para voltar 1 mês

mp = DateSerial(year(dt),month(dt)+1,1) 'Para andar 1 mês

'-------------------------

'Montagem da Grade de Dias

'-------------------------

dim gr(42) 'Matriz

dim li 'Linhas da Grade

dim co 'Colunas da Grade

dim ct 'Contador da Grade

ct = 1

dim lp 'Suporte aos Loops

'-------------------------

'Montagem dos Quadros Brancos

'-------------------------

for lp = 2 to weekday(pd)- 1

gr(ct) = "&nbsp;"

ct = ct + 1

next

'-------------------------

'Lendo o Mês Atual

'-------------------------

for lp = pd to ud

if lp = "3/4/2005" then

gr(ct) = "<font color = red>" & day(lp) & "</font>"

else

gr(ct) = day(lp)

end if

ct = ct + 1

next

'-----------------------------

'Montagem do Resto dos Quadros

'-----------------------------

for lp = ct to 42

gr(lp) = "&nbsp;" 'Coloquei LP dentro do GR porque ele já

'tem o valor de CT (que é a posição

'do último dia + 1)

next

ct = 1

%>

<html><body><center>

<table border=1 cellspacing = 0>

<tr>

<td>

<a href= "cal.asp?dt=<%=ma%>">

<b>></b><!--img src="direita.gif"-->

</a>

</td>

<td colspan = 5 align = center>

<font face = "verdana" size = 3><b>

<%=Ucase(MonthName(month(dt),true))%>/<%=year(dt)%>

</b></font>

</td>

<td>

<a href = "cal.asp?dt=<%=mp%>">

<b><</b><!--img src="esquerda.gif"-->

</a>

</td>

</tr>

<tr>

<td>DOM</td><td>SEG</td><td>TER</td>

<td>QUA</td><td>QUI</td><td>SEX</td><td>SAB</td>

</tr>

<%for li = 1 to 6%>

<tr>

<%for co = 1 to 7%>

<td><%=gr(ct)%></td>

<%ct = ct + 1%>

<%next%>

</tr>

<%next%>

não sei como aplicar neste calendario um select da tabela que eu fiz para apareser a data do evento dentro do calendario com uma cor diferente e com o link

eu tentei fazer assim mas não da certo

Set SQLnews = Server.CreateObject("ADODB.RecordSet")

mes="4"

  SQLnews = " SELECT * FROM calendario"

  Set RSnews = obj.Execute(SQLnews)

  'If Not RSnews.EOF Then RSnews.MoveFirst

Do While Not RSnews.EoF

gg = RSnews("gg")

mm = RSnews("mm")

aa = RSnews("aa")

evento = gg&"/"&mm&"/"&aa

for lp = pd to ud

if lp = evento then

gr(ct) = "<font color = red>" & day(lp) & "</font>"

else

gr(ct) = day(lp)

end if

ct = ct + 1

next

RSnews.MoveNext

Loop

RSnews.Close

Set RSnews = Nothing

não sei como fazer

quem mi ajudar agradeço muito sad.gif

Obrigada

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

não se esqueça que quando você lida com máquina, em comparação deve-se não só comparar a compatibilidade dos dados mas também o tipo de dado:

str=1 não é o mesmo que str="1", ou seja

tente tranformar evento em um modelo compatível com Ip:

evento = cdate(gg&"/"&mm&"/"&aa)

porque no seu caso evento trata-se de uma String e Ip de uma data, são dados totalmente distintos um do outro.

qualque duvida post ai!!!!

kwead.com ano'5

Link para o comentário
Compartilhar em outros sites

  • 0

Ola aferlim

obrigada pela resposta

procurei fazer algo

não com aquele codigo mas com outros codigos que encontrei na internet

não mim lembro mais onde encontrei esse calendario e nem tem escritto nele

mas o nome do file é Diary.zip ali você encontra um calendario que pode ser modificado

coloco aqui para que serva de exemplo pra quem precisar

<%

'Response.ExpiresAbsolute  = dateadd("d", -5, date())

'Response.Expires = -10

Session.LCID = 1046

Function FormatStr(String)

on Error resume next

String = Replace(String, CHR(13), "")

String = Replace(String, CHR(10) & CHR(10), "</P><P>")

String = Replace(String, CHR(10), "<BR>")

FormatStr = String

End Function

'--------------------------------------------------

  Function DtPrevSunday(ByVal dt)

      Do While WeekDay(dt) > vbSunday

        dt = DateAdd("d", -1, dt)

      Loop

  DtPrevSunday = dt

  End Function

'--------------------------------------------------

function dNum(n)

if n >= 10 then

  dNum = cstr(n)

Else

  dNum = "0" & cstr(n)

End If

End Function

'SQL Formatted Date

Function SQLDate(dt)

SQLDate = cdbl(dt)

End Function

Sub diary(dtView,days)

if days > "" then

arDates = split(days, ",")

End if

dtToday = Date()

' Get fiobjRst day of month

dttmp = dtView

dtday = day(dttmp)

dttmp = dateadd("d", (-dtday+1), dttmp)

dtCurViewMonth = dttmp

%>

    <b>Calendario eventos </b>

      <TABLE CELLPADDING=1 class="TABLE_calendario" CELLSPACING=1 WIDTH="165" ID="Table1">

          <TR VALIGN=MIDDLE ALIGN=CENTER>

            <TD COLSPAN=7>

            <TABLE CELLPADDING=0 CELLSPACING=0 WIDTH="100%" BORDER=0 ID="Table2">

                <TR VALIGN=MIDDLE ALIGN=CENTER>

                  <TD WIDTH="80%" class="TITOLO">

                      <B><%=MonthName(Month(dtCurViewMonth)) & " " & Year(dtCurViewMonth)%></B>

                  </TD>

                </TR>

            </TABLE>

            </TD>

          </TR>

          <TR VALIGN=TOP ALIGN=CENTER class="TITOLO">

    <Td WIDTH="14%" >D<%'=WeekDayName(iDay, true)%></Td>

      <Td WIDTH="14%" >L<%'=WeekDayName(iDay, true)%></Td>

    <Td WIDTH="14%" >M<%'=WeekDayName(iDay, true)%></Td>

    <Td WIDTH="14%" >M<%'=WeekDayName(iDay, true)%></Td>

      <Td WIDTH="14%" >G<%'=WeekDayName(iDay, true)%></Td>

      <Td WIDTH="14%" >V<%'=WeekDayName(iDay, true)%></Td>

    <Td WIDTH="14%" >S<%'=WeekDayName(iDay, true)%></Td>

          <% 'For iDay = vbSunday To vbSaturday %>

        <%'    <Td WIDTH="14%" >=WeekDayName(iDay, true)</Td>%>

          <%'Next %>

        </TR>

<% 

  dtCurViewDay = DtPrevSunday(dtCurViewMonth)

 

  For iWeek = 0 To 5

      Response.Write "<TR VALIGN=TOP align=center >" & vbCrLf

For iDay = 0 To 6

       

    If Month(dtCurViewDay) = Month(dtCurViewMonth) Then

    if days > "" then

    Done = false

      for i = 0 to ubound(arDates)

      if cdbl(dtCurViewday)  = cdbl(arDates(i)) then

      Response.Write "<TD align=center bgcolor="#CCCCCC"><a href=default.asp?" & "view_date=" & SQLDate(dtCurViewday)& ">"

      Done = true

      End If

    next

    if Done = false then Response.Write "<TD align=center >" 'qui sarebbe link

    Else

    Response.Write "<TD><a href=default.asp?" & "view_date=" & SQLDate(dtCurViewday) & ">"

        End if   

            Response.Write  Day(dtCurViewDay) & ""

  Else

  Response.Write "<TD>"

    End If

        Response.Write "</TD></a>" & vbCrLf

        dtCurViewDay = DateAdd("d", 1, dtCurViewDay)

      Next

      Response.Write "</TR>" & vbCrLf

  Next

%>

<%

' --------END OF DRAW CALENDAR SECTION--------

Response.Write "</table>"

End Sub

%>

<%

set objRs = Server.CreateObject("ADODB.Recordset")

SQL = "SELECT * FROM calendario Where dte >= " & cdbl(date()) & " order by dte"

objRs.Open SQL, obj, 1, 1

if objRs.EOF or objRs.BOF then

'Response.Write "<div class=heading2>No Events Found</div>"

d = cdbl(date())

Else

d = cdbl(objRs("dte"))

End If

%>

<% do until objRs.EOF %>

<%

  objRs.movenext

  loop

objRs.Close

SQL = "SELECT DISTINCT dte as DT from calendario where dte >= " & cdbl(date)

  objRs.Open SQL, obj

   

  do until objRs.EOF 

  data = data & ", " &  objRs("dt")

 

 

  objRs.MoveNext

  loop

  %>

<%

data = Replace(data, ",", "", 1, 1)

if d = "" then d = now

diary d, data

'Response.Write

  %>

não é pefeito

mas funziona

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...