Nel frattempo ho trovato un altro script.
codice:
<%
If Request("data") ="" then
data = Date()
else
data = CDate(Request("data"))
end if
%>
<%
Dim rs1
Dim rs1_cmd
Dim rs1_numRows
Set rs1_cmd = Server.CreateObject ("ADODB.Command")
rs1_cmd.ActiveConnection = "Provider=SQLOLEDB;data Source=srvmssql1;Initial Catalog=ammidati;User Id=Ammidati; Password=Ammi123dati"
'Condizione where che ho provato ad inserire per visualizzare solo i record della data selezionata
rs1_cmd.CommandText = "SELECT * FROM ammidati.Agenda where Data_Inizio='" & CStr(data) & "'"
rs1_cmd.Prepared = true
Set rs1 = rs1_cmd.Execute
rs1_numRows = 0
%>
<%
Dim Repeat1__numRows
Dim Repeat1__index
Repeat1__numRows = -1
Repeat1__index = 0
rs1_numRows = rs1_numRows + Repeat1__numRows
%>
<html>
<head>
<title>Calendario</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style>
td { font: Normal 10px Verdana; }
</style>
<style type="text/css">
<!--
.sfondocella {
background-color: #CCCCCC;
}
.sfondocellarosso {
background-color: #990033;
}
-->
</style>
</head>
<%
Session.LCID = 1040
%>
<body>
<p> </p>
<Table>
<Tr>
<td width="520" valign="top" class="bordotab">
<%
intestazione = UCase(MonthName(Month(Data))) & " " & Year(Data)
gg_mese = "01/" & Month(Data) & "/" & Year(Data)
gg = 1
%>
<table width="100%" border="1" align="center" cellpadding="5"
cellspacing="0" bordercolor="#CCCCCC" bgcolor="#FFFFFF">
<tr>
<td align="center" valign="top" bgcolor="#EEEEEE"><a href="agenda_3.asp?data=<%=DateAdd("m", -1, data)%>"><strong><</strong></a></td>
<td align="center" colspan="5" bgcolor="#EEEEEE"><b><%=intestazione%></a></b>
<td align="center" bgcolor="#EEEEEE"><a href="agenda_3.asp?data=<%=DateAdd("m", 1, data)%>"><strong>></strong></a></td></tr>
<tr bgcolor="#FFFFCC">
<td align="center"><b>DOM</b></td>
<td align="center"><b>LUN</b></td>
<td align="center"><b>MAR</b></td>
<td align="center"><b>MER</b></td>
<td align="center"><b>GIO</b></td>
<td align="center"><b>VEN</b></td>
<td align="center"><b>SAB</b></td>
</tr>
<%
If (Month(Data) + 1) > 12 Then
mm = 1
aa = Year(Data) + 1
Else
mm = (Month(Data) + 1)
aa = Year(Data)
End if
primo = "01" & "/" & mm & "/" & aa
ultimo = DateAdd("d", -1, primo)
While (gg <= Day(ultimo))
%>
<tr>
<%
gg_sett = WeekDay(gg_mese)
For i = 1 To gg_sett - 1
%>
<td align="center" bgcolor="#EEEEEE"> </td>
<%
Next
For i = gg_sett To 7
If gg = Day(Data) And Month(Data) = Month(Date()) Then
colore_gg = "#FFCCCC"
Else
colore_gg = "#FFFFFF"
End If
%>
<td align="center" bgcolor="<%=colore_gg%>"><a href="agenda_3.asp?data=<%=gg & "/" & Month(Data) & "/" & Year(Data)%>"><%=gg%></a></td>
<%
gg = gg + 1
If gg > Day(ultimo) Then Exit For
Next
For i = i + 1 To 7
%>
<td align="center"> </td>
<%
Next
%>
</tr>
<%
gg_mese = gg & "/" & Month(Data) & "/" & Year(Data)
Wend
%>
</table>
</div></td>
</Tr>
</Table>
<p><strong>Appuntamenti del giorno: <%Response.Write(Data)%></strong></p>
<!-- Primo record del DB: Sezione che poi dovrò ripetere per ogni record nel DB-->
<%
varRs1 = "<B>Non ci sono appuntamenti </B>"
%>
<%
While ((Repeat1__numRows <> 0) AND (NOT rs1.EOF))
If (rs1.Fields.Item("Id_app").Value) <> "" Then varRs1 = ""
%>
<p><strong>Data Inizio:</strong> <%=(rs1.Fields.Item("Data_Inizio").Value)%><br>
<strong>Data Fine:</strong> <%=(rs1.Fields.Item("Data_Fine").Value)%><br>
<strong>Ora Inizio:</strong> <%=(rs1.Fields.Item("Ora_Inizio").Value)%><br>
<strong>Ora Fine</strong>: <%=(rs1.Fields.Item("Ora_Fine").Value)%><br>
<strong>Appunt.:</strong> <%=(rs1.Fields.Item("Appuntamento").Value)%></p>
<%
Repeat1__index=Repeat1__index+1
Repeat1__numRows=Repeat1__numRows-1
rs1.MoveNext()
Wend
response.write(varRs1)
%>
</body>
</html>
<%
rs1.Close()
Set rs1 = Nothing
%>
Potrebbe pure andare, anche se bisogna lavorarci un pò sull'aspetto grafico del calendario. Gli appuntamenti vengono visualizzati sotto il calendario quando si clicca sul giorno desiderato.
Quello che servirebbe per renderlo migliore sono alcuni punti:
1) Sul calendario accanto al giorno poter visualizzare il totale degli appuntamenti presenti, questo per rendere subito l'idea se il giorno possa essere usato x altri appuntamenti o meno e magari evidenziare i giorni sul calendario la dove siano presenti appuntamenti.
2) La parte che visualizza la cronologia degli appuntamenti servirebbe un box che ad esempio visualizzi 5 appuntamenti per poi far comparire una scroll questo per evitare che la pagina diventi lunga in presenza di molti dati.
Potete aiutarmi in merito?