Sto cercando di realizzare un calendario appuntamenti collegato ad un db Access.
Il funzionamento desiderato è il seguente:
1. I mesi dovrebbero avanzare avanti e indietro facendo vedere i giorni relativi.
2. All'immissione nel db di un nuovo appuntamento dovrebbe crearsi un collegamento con relativa formattazione sul giorno desiderato.
3. Cliccando sul giorno così formattato dovrebbero visualizzarsi gli appuntamenti su una tabella nella stessa pagina.
Ho già realizzato in parte il calendario ma non so come far scorrere i mesi e come far formattare i giorni visto che mi viene formattato e creato il link soloper il primo giorno presente nel db, inoltre mi vengono estratti tutti i record senza essere filtrati dal giorno relativo.
Ringrazio quanti vorranno leggere e darmi un aiuto.
Il codice che ho utilizzato è il seguente:
<%@LANGUAGE="VBSCRIPT"%>
<!--#include file="Connections/conn_piero.asp" -->
<style type="text/css">
<!--
.selez {
font-family: Arial, Helvetica, sans-serif;
font-size: 12px;
font-weight: bolder;
color: #FFFFFF;
}
-->
</style>
<%
Dim rs1
Dim rs1_numRows
Set rs1 = Server.CreateObject("ADODB.Recordset")
rs1.ActiveConnection = MM_conn_piero_STRING
rs1.Source = "SELECT * FROM appuntamanti"
rs1.CursorType = 0
rs1.CursorLocation = 2
rs1.LockType = 1
rs1.Open()
rs1_numRows = 0
%>
<%
Dim Repeat1__numRows
Dim Repeat1__index
Repeat1__numRows = -1
Repeat1__index = 0
rs1_numRows = rs1_numRows + Repeat1__numRows
%>
<%
LCID = 1040
Session.LCID = LCID
%>
<%
response.write ("<table width='200' border='1' cellpadding='0' cellspacing='0' bordercolor='#FFFFFF' bgcolor='#99CCFF'>")
response.write ("<tr><td align=center colspan=7><font color=#ff0000 size=2><strong>" & Ucase(monthname(month(date()))) & " " & year(date()) & "</strong></font></td></tr>")
response.write ("<tr><td align=center><strong><font color=#000066 size=2 face=Verdana, Arial, Helvetica, sans-serif>D</font></strong></td>")
response.write ("<td align=center><strong><font color=#000066 size=2 face=Verdana, Arial, Helvetica, sans-serif>L</font></strong></td>")
response.write ("<td align=center><strong><font color=#000066 size=2 face=Verdana, Arial, Helvetica, sans-serif>M</font></strong></td>")
response.write ("<td align=center><strong><font color=#000066 size=2 face=Verdana, Arial, Helvetica, sans-serif>M</font></strong></td>")
response.write ("<td align=center><strong><font color=#000066 size=2 face=Verdana, Arial, Helvetica, sans-serif>G</font></strong></td>")
response.write ("<td align=center><strong><font color=#000066 size=2 face=Verdana, Arial, Helvetica, sans-serif>V</font></strong></td>")
response.write ("<td align=center><strong><font color=#000066 size=2 face=Verdana, Arial, Helvetica, sans-serif>S</font></strong></td></tr>")
giornodelmese="01/" & month(date()) & "/" & year(date())
giorno=1
'questo controllo risolve il probelma del mese di dicembre
if (month(date())+1)>12 then
anno=Year(date())+1
mese=1
else
anno=Year(date())
mese=(month(date())+1)
end if
primodelmesesuccessivo="01" & "/" & mese & "/" & anno
ultimodelmese=DateAdd("d",-1,primodelmesesuccessivo)
While (giorno<day(ultimodelmese))
response.write ("<tr>")
giornodellaset=WeekDay(giornodelmese)
for i=1 to giornodellaset-1
response.write ("<td> </td>")
next
for i=giornodellaset to 7
if (rs1.Fields.Item("dataapp").Value) = DateSerial(Year(Now),Month(Now),giorno) Then
response.write ("<td><table width=100% height=100% border=0 bgcolor=#000066><tr><td align=center valign=middle><a href=?Pagina=" & giorno & " class='selez'>" & giorno & "</a></td></tr></table></td>")
else
response.write ("<td><Table><tr><td align=center valign=middle><font color=#003366 size=2 face=Verdana, Arial, Helvetica, sans-serif>" & giorno & "</td></font></tr></table></td>")
End If
giorno=giorno+1
if giorno>day(ultimodelmese) then exit for
next
for i=i+1 to 7
response.write ("<td> </td>")
next
response.write ("</tr>")
giornodelmese=(giorno) & "/" & month(date()) & "/" & year(date())
Wend
response.write ("</table>")
%>
<p class="selez"> </p>
<p class="selez"> </p>
<table width="800" border="1" cellspacing="0" cellpadding="0">
<tr>
<td width="100"><strong>Data</strong></td>
<td width="91"><strong>ora </strong></td>
<td width="220"><strong>Luogo</strong></td>
<td width="379"><strong>desrizione</strong></td>
</tr>
<%
While ((Repeat1__numRows <> 0) AND (NOT rs1.EOF))
%>
<tr>
<td><font color="#003366" size="2" face="Verdana, Arial, Helvetica, sans-serif"><a href="?pagina=giorno"><%=(rs1.Fields.Item("dataapp").Value)%></a></font></td>
<td align="center" valign="middle"><font color="#003366" size="2" face="Verdana, Arial, Helvetica, sans-serif"><%=(rs1.Fields.Item("oraapp").Value)%></font></td>
<td><font color="#003366" size="2" face="Verdana, Arial, Helvetica, sans-serif"><%=(rs1.Fields.Item("luogo").Value)%></font></td>
<td><font color="#003366" size="2" face="Verdana, Arial, Helvetica, sans-serif"><%=(rs1.Fields.Item("desc").Value)%></font></td>
</tr>
<%
Repeat1__index=Repeat1__index+1
Repeat1__numRows=Repeat1__numRows-1
rs1.MoveNext()
Wend
%>
</table>
<%
rs1.Close()
Set rs1 = Nothing
%>