Avatar billede donslund Nybegynder
22. februar 2003 - 15:39 Der er 6 kommentarer og
1 løsning

understregning i kalender

Jeg har denne kode:

<%
For y = 1 to 6
If blnLast <> True Then
Response.Write "<tr>"
For x = 1 to 7
Response.Write "<td align=center><font face=verdana size=2><a href=http://localhost/kalender.asp?date=" & DateAdd("d", intLoopDay-intFirstDay, dtmFirstDate)+1 & ">"
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 "<b>"
End If
Response.Write Day(dtmCurDate)
Response.Write "</b></td>"
blnLast = False
Else
Response.Write "</td>"
blnLast = True
End If
Else
Response.Write "</td>"
blnLast = True
End if
Response.Write "</a>"
Next
End If
Next
Response.Write "</font></td></tr>"
%>

som laver de enkelte dage i en kalender, 1 måned af gangen. Nu er det jeg vil gennemløbe en db for at se om der er noget i kalenderen den enkelte dag. datoerne i databasen finde på normal vis og står som rs("dato") men hvordan får gennemløbet min database samtidigmed at den skriver de enkelte datoer?

Lyder det helt uladesiggøreligt?
Avatar billede medions Nybegynder
22. februar 2003 - 15:41 #1
strSQL = "SELECT * FROM tblTabelnavn"
Set objRs = objConn.Execute(strSQL)

While Not objRs.EOF
  Response.Write("Datoen er: " & objRs("datoen"))
objRs.MoveNext()
Wend

//>Rune
Avatar billede donslund Nybegynder
22. februar 2003 - 15:43 #2
Jeg tror vi misforstår hinanden :-)

Det jeg vil have den til er, så foreksempel at den laver fed når den skriver 22 som i dag. Det gør den allered, men den skal lave understregning på den dato hvor der i databasen findes en punkt med den pågældende dato.
Avatar billede eagleeye Praktikant
22. februar 2003 - 15:44 #3
Du kan lave et udtræk fra databasen som hendter alle events for den månede du arbejder med..:

"SELECT * FROM xxxx WHERE Month(dato) = " & kalenderMånede

Så kan du tjekke på om den dato som findes i recordset er lig med den dato som du udksriver i kalendren.:

if not rs.EOF then
  if CDAte(rs("dato")) = CDate(kalenderDato) then
    'Understregn

    'Flyt til næste
    rs.Movenext
  end if
end if
Avatar billede eagleeye Praktikant
22. februar 2003 - 15:48 #4
Glemte lige at skrive den SQL som hendter datoer skal sorteres efter dato med mindst dato først og det er også nødvendig at medtage år:

"SELECT * FROM xxxx WHERE Month(dato) = " & kalenderMånede & " AND Year(dato) = " & kalenderÅr & " ORDER BY Dato"
Avatar billede donslund Nybegynder
22. februar 2003 - 15:52 #5
det forstår jeg næsten godt og det er også noget lignende jeg har rodet med, men jeg kan ikke greje hvordan jeg putter det ind i ovenstående kode.
Avatar billede eagleeye Praktikant
22. februar 2003 - 16:00 #6
Ok.. måske vi kan hjælpes så, det skal nok være noget i stil med dette hvis jeg læser koden rigtigt. Du skal rette SQL så den passer med din database og der er et par variable nanve som skal rettes:


<%
kMonth = Month( Variable her med dato)
kYear = Year( Variable her med dato)
SQL = "SELECT * FROM xxxx WHERE Month(dato) = " & kMonth & " AND Year(dato) = " & kYear & " ORDER BY Dato"
Set rs = Connection.Execute(SQL)


For y = 1 to 6
If blnLast <> True Then
  Response.Write "<tr>"
  For x = 1 to 7
  Response.Write "<td align=center><font face=verdana size=2><a href=http://localhost/kalender.asp?date=" & DateAdd("d", intLoopDay-intFirstDay, dtmFirstDate)+1 & ">"
  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 "<b>"
    End If

    if not rs.EOF then
      if CDAte(rs("dato")) = CDate(dtmCurDate) then
      'Understregn
      Response.Write "<i>"

      'Flyt til næste
      rs.Movenext
      end if
    end if

    Response.Write Day(dtmCurDate)
    Response.Write "</i></b></td>"
    blnLast = False
    Else
    Response.Write "</td>"
    blnLast = True
    End If
  Else
    Response.Write "</td>"
    blnLast = True
  End if
    Response.Write "</a>"
  Next
End If
Next
Response.Write "</font></td></tr>"
%>
Avatar billede donslund Nybegynder
22. februar 2003 - 16:08 #7
Det var simpelthen det der skulle til. Det var jo ikke fordi, jeg ville have jer til at lave mit arbejde, Men jeg løb totalt vild i do, if, end if og hvad ved jeg.

Tusind tak for hjælpen.  Nu skal I nok slippe for mig resten af dagen :-)
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

IT-JOB