Avatar billede tblaster Nybegynder
22. september 2002 - 15:44 Der er 5 kommentarer og
1 løsning

Kalender

Hejsa ...

Jeg har en side hvor jeg får viste en oversigt over denne måned. Nu vil jeg så gerne også have at den nedenunder viser en oversigt over næste måned på nøjagtig samme måde som denne måned. Er der en der kan fikse det for mig?

Her er min kode til det jeg har nu:

<body bgcolor=#ffffff text=#4179B6 link=#4179B6 vlink=#4179B6 alink=#FF0000>

<%
dtmDate = Request.QueryString("date")
dtmToday = Date
sQLokale = request.querystring("Lokale")

If dtmDate = "" Then
  dtmDate = Date
Else
  dtmDate = CDate(dtmDate)
End if

intYear = Year(dtmDate)
strMonth = MonthName(Month(dtmDate))
intDayOfMonth = Day(dtmDate)
dtmFirstDate = DateAdd("d", (-intDayOfMonth)+1, dtmDate)
intFirstDay = Weekday(dtmFirstDate, vbMonday)
%>

<TABLE cellSpacing=0 cellPadding=2 width=150 align=center border=0>
  <TR>
    <TD>
      <CENTER>
      <P><FONT face=Verdana size=2><A href="kalender.asp?date=<%=DateAdd("m",-1,dtmFirstDate)%>">&lt;&lt;</A>
      | <A href="kalender.asp">I dag</A>
      | <A href="kalender.asp?date=<%=DateAdd("m",1,dtmFirstDate)%>">&gt;&gt;</A></FONT></P></CENTER></TD></TR></TABLE>
<TABLE borderColor=#cccccc cellSpacing=0 width=150 align=center border=1>
  <TR>
    <TD colSpan=7>
      <P align=center><FONT face=Verdana size=1><%=strMonth%>&nbsp;<%=intYear%></FONT></P></TD></TR>
  <TR>
    <TD>
      <P align=center><font face="Verdana" size="1">Ma</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">Ti</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">On</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">To</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">Fr</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">Lø</font></P></TD>    <TD>
      <P align=center><FONT face=Verdana size=1>Sø</FONT></P></TD></TR>
  <TR>

<%
For y = 1 to 6
    If blnLast <> True Then
        Response.Write "<tr>"
        For x = 1 to 7
            intLoopDay = intLoopDay + 1
            If intLoopDay >= intFirstDay Then
                dtmCurDate = DateAdd("d", intLoopDay-intFirstDay, dtmFirstDate)
                If Month(dtmCurDate) = Month(dtmFirstDate) Then
                    If dtmCurDate = dtmToday Then
                        Response.Write "<td align=center bgcolor=#ffcccc><a target=""højre"" href=dato.asp?Lokale=" & sQLokale & "&Dag=" & Day(dtmCurDate) & "&Mdr=" & Month(dtmCurDate) & "&År=" & Year(dtmCurDate) & " ><font face=Verdana size=1 color=#4179b6>" & Day(dtmCurDate) & "</strong></font></a></td>"
                    Else ' Ny linie
                    Response.Write "<td align=center><a target=""højre"" href=dato.asp?Lokale=" & sQLokale & "&Dag=" & Day(dtmCurDate) & "&Mdr=" & Month(dtmCurDate) & "&År=" & Year(dtmCurDate) & " ><font face=Verdana size=1>" & Day(dtmCurDate) & "</strong></font></a></td>"
                    End if ' Er flyttet
                    blnLast = False
                Else
                    Response.Write "<td align=center bgcolor=#ebebeb><font face=Verdana size=1>-</td>"
                    blnLast = True
                End If
            Else
                Response.Write "<td align=center bgcolor=#ebebeb><font face=Verdana size=1>-</td>"
                blnLast = True
            End if
        Next
    End If
Next
Response.Write "</font></td></tr>"
%>
Avatar billede eagleeye Praktikant
22. september 2002 - 19:34 #1
Skal det være på samme side så kan man lave et loop omkring det hele med en for sætning.. eks:


<body bgcolor=#ffffff text=#4179B6 link=#4179B6 vlink=#4179B6 alink=#FF0000>

<%
dtmDate = Request.QueryString("date")
dtmToday = Date
sQLokale = request.querystring("Lokale")

If dtmDate = "" Then
  dtmDate = Date
Else
  dtmDate = CDate(dtmDate)
End if

for mCount = 0 to 1                      'ny linie
  dtmDate = DateAdd("m",mCount,dtmDate)    'ny linie

  intYear = Year(dtmDate)
  strMonth = MonthName(Month(dtmDate))
  intDayOfMonth = Day(dtmDate)
  dtmFirstDate = DateAdd("d", (-intDayOfMonth)+1, dtmDate)
  intFirstDay = Weekday(dtmFirstDate, vbMonday)
%>

<TABLE cellSpacing=0 cellPadding=2 width=150 align=center border=0>
  <TR>
    <TD>
      <CENTER>
      <P><FONT face=Verdana size=2><A href="kalender.asp?date=<%=DateAdd("m",-1,dtmFirstDate)%>">&lt;&lt;</A>
      | <A href="kalender.asp">I dag</A>
      | <A href="kalender.asp?date=<%=DateAdd("m",1,dtmFirstDate)%>">&gt;&gt;</A></FONT></P></CENTER></TD></TR></TABLE>
<TABLE borderColor=#cccccc cellSpacing=0 width=150 align=center border=1>
  <TR>
    <TD colSpan=7>
      <P align=center><FONT face=Verdana size=1><%=strMonth%>&nbsp;<%=intYear%></FONT></P></TD></TR>
  <TR>
    <TD>
      <P align=center><font face="Verdana" size="1">Ma</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">Ti</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">On</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">To</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">Fr</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">Lø</font></P></TD>    <TD>
      <P align=center><FONT face=Verdana size=1>Sø</FONT></P></TD></TR>
  <TR>

<%
For y = 1 to 6
    If blnLast <> True Then
        Response.Write "<tr>"
        For x = 1 to 7
            intLoopDay = intLoopDay + 1
            If intLoopDay >= intFirstDay Then
                dtmCurDate = DateAdd("d", intLoopDay-intFirstDay, dtmFirstDate)
                If Month(dtmCurDate) = Month(dtmFirstDate) Then
                    If dtmCurDate = dtmToday Then
                        Response.Write "<td align=center bgcolor=#ffcccc><a target=""højre"" href=dato.asp?Lokale=" & sQLokale & "&Dag=" & Day(dtmCurDate) & "&Mdr=" & Month(dtmCurDate) & "&År=" & Year(dtmCurDate) & " ><font face=Verdana size=1 color=#4179b6>" & Day(dtmCurDate) & "</strong></font></a></td>"
                    Else ' Ny linie
                    Response.Write "<td align=center><a target=""højre"" href=dato.asp?Lokale=" & sQLokale & "&Dag=" & Day(dtmCurDate) & "&Mdr=" & Month(dtmCurDate) & "&År=" & Year(dtmCurDate) & " ><font face=Verdana size=1>" & Day(dtmCurDate) & "</strong></font></a></td>"
                    End if ' Er flyttet
                    blnLast = False
                Else
                    Response.Write "<td align=center bgcolor=#ebebeb><font face=Verdana size=1>-</td>"
                    blnLast = True
                End If
            Else
                Response.Write "<td align=center bgcolor=#ebebeb><font face=Verdana size=1>-</td>"
                blnLast = True
            End if
        Next
    End If
Next
Response.Write "</font></td></tr>"
%>
</table>
<% next 'for i=0 to 1    <---- ny linie    %>
Avatar billede tblaster Nybegynder
23. september 2002 - 17:41 #2
Hvis jeg bruger det så bliver << | I dag | >> vist 2 gange hvilket den jo ikke skal og derudover så bliver der kun vist oktober 2002 og alle hverdagene (ma, ti, on, to, fr, lø, sø ) den går ikke ind og smider datoerne ind :-(
Avatar billede eagleeye Praktikant
23. september 2002 - 18:49 #3
hmm ja det kan jeg se, der er lidt der skal ændre prøv at bruge dette:


<body bgcolor=#ffffff text=#4179B6 link=#4179B6 vlink=#4179B6 alink=#FF0000>

<%
dtmDate = Request.QueryString("date")
dtmToday = Date
sQLokale = request.querystring("Lokale")

If dtmDate = "" Then
  dtmDate = Date
Else
  dtmDate = CDate(dtmDate)
End if

for mCount = 0 to 1                      'ny linie
  dtmDate = DateAdd("m",mCount,dtmDate)    'ny linie

  intYear = Year(dtmDate)
  strMonth = MonthName(Month(dtmDate))
  intDayOfMonth = Day(dtmDate)
  dtmFirstDate = DateAdd("d", (-intDayOfMonth)+1, dtmDate)
  intFirstDay = Weekday(dtmFirstDate, vbMonday)
%>

<% if mCount = 0 then %>
<TABLE cellSpacing=0 cellPadding=2 width=150 align=center border=0>
  <TR>
    <TD>
      <CENTER>
      <P><FONT face=Verdana size=2><A href="kalender.asp?date=<%=DateAdd("m",-1,dtmFirstDate)%>">&lt;&lt;</A>
      | <A href="kalender.asp">I dag</A>
      | <A href="kalender.asp?date=<%=DateAdd("m",1,dtmFirstDate)%>">&gt;&gt;</A></FONT></P></CENTER>
    </TD>
  </TR>
</TABLE>
<% end if %>

<TABLE borderColor=#cccccc cellSpacing=0 width=150 align=center border=1>
  <TR>
    <TD colSpan=7>
      <P align=center><FONT face=Verdana size=1><%=strMonth%>&nbsp;<%=intYear%></FONT></P></TD></TR>
  <TR>
    <TD>
      <P align=center><font face="Verdana" size="1">Ma</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">Ti</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">On</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">To</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">Fr</font></P></TD>    <TD>
      <P align=center><font face="Verdana" size="1">Lø</font></P></TD>    <TD>
      <P align=center><FONT face=Verdana size=1>Sø</FONT></P></TD></TR>
  <TR>

<%
blnLast = False
intLoopDay = 0
For y = 1 to 6
    If blnLast <> True Then
        Response.Write "<tr>"
        For x = 1 to 7
            intLoopDay = intLoopDay + 1
            If intLoopDay >= intFirstDay Then
                dtmCurDate = DateAdd("d", intLoopDay-intFirstDay, dtmFirstDate)
                If Month(dtmCurDate) = Month(dtmFirstDate) Then
                    If dtmCurDate = dtmToday Then
                        Response.Write "<td align=center bgcolor=#ffcccc><a target=""højre"" href=dato.asp?Lokale=" & sQLokale & "&Dag=" & Day(dtmCurDate) & "&Mdr=" & Month(dtmCurDate) & "&År=" & Year(dtmCurDate) & " ><font face=Verdana size=1 color=#4179b6>" & Day(dtmCurDate) & "</strong></font></a></td>"
                    Else ' Ny linie
                    Response.Write "<td align=center><a target=""højre"" href=dato.asp?Lokale=" & sQLokale & "&Dag=" & Day(dtmCurDate) & "&Mdr=" & Month(dtmCurDate) & "&År=" & Year(dtmCurDate) & " ><font face=Verdana size=1>" & Day(dtmCurDate) & "</strong></font></a></td>"
                    End if ' Er flyttet
                    blnLast = False
                Else
                    Response.Write "<td align=center bgcolor=#ebebeb><font face=Verdana size=1>-</td>"
                    blnLast = True
                End If
            Else
                Response.Write "<td align=center bgcolor=#ebebeb><font face=Verdana size=1>-</td>"
                blnLast = True
            End if
        Next
    End If
Next
Response.Write "</font></td></tr>"
%>
</table>
<% next 'for i=0 to 1    <---- ny linie    %>
Avatar billede tblaster Nybegynder
23. september 2002 - 21:15 #4
Det lod til at virke ... hvad har du ændret i grove træk?
Avatar billede eagleeye Praktikant
23. september 2002 - 21:19 #5
Jeg har tilføjet en if sætning så den kun udskriver << idag >> første gang:


<% if mCount = 0 then %>                      <---------------- Hvis det er første gang
<TABLE cellSpacing=0 cellPadding=2 width=150 align=center border=0>
  <TR>
    <TD>
      <CENTER>
      <P><FONT face=Verdana size=2><A href="kalender.asp?date=<%=DateAdd("m",-1,dtmFirstDate)%>">&lt;&lt;</A>
      | <A href="kalender.asp">I dag</A>
      | <A href="kalender.asp?date=<%=DateAdd("m",1,dtmFirstDate)%>">&gt;&gt;</A></FONT></P></CENTER>
    </TD>
  </TR>
</TABLE>
<% end if %>                '<------------------ end if



Og så skulle der "nul"-stilles to variable til udskrivningen af anden månede:

<%
blnLast = False            '<--------- Denne
intLoopDay = 0              '<--------- Og denne
For y = 1 to 6
Avatar billede tblaster Nybegynder
23. september 2002 - 21:23 #6
ok ... thx ... du har temmelig meget styr på asp ... kan du hjælpe her:

http://www.eksperten.dk/spm/260934
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester