Salve a tutti,
ho una pagina asp con un form:
<form action="descrEvento.asp" target="descrizione"><input type="text" name="data">
sotto, ho un <iframe name="descrizione">
al submit del form il valore data viene passato all'iframe descrizione, dove ho questo codice asp:
codice:
<%
set conn = server.createobject("ADODB.Connection")
conn.open("Provider = Microsoft.Jet.OLEDB.4.0; Data Source = "& server.MapPath(":D"))
Session.LCID = 1040
// se non passiamo nessun valore parte dalla data odierna
If Request("data") ="" then
data = Date()
else
data = CDate(Request("data"))
end if
mese = Month(data)
anno = Year(data)
giorno = Day(data)
oDt = mese&"/"&giorno&"/"&anno
set recset = conn.execute ("select * from eventi where #"&oDt&"#>=dal AND #"&oDt&"#<=al order by comune ASC")
%>
<table width="390">
<%
do while not recset.eof
%>
<tr><td width="85" bgcolor="#0099FF"><font color="#FFFFFF">dal: <%=recset("dal")&" al: "&recset("al")%></font></td>
</tr>
<tr>
<td width="293"><%=recset("comune")%><ul>[*]<font size="2"><%=recset("evento")%>
<%=recset("descrizione")%>
<%
if recset("link")<>"" then %>
" target="_blank">Link all'evento</font>
<%
end if
%>
[/list]</td>
</tr>
<%
recset.movenext
loop
%>
</table>
che mi stampa nell'iframe tutti gli eventi trovati nel db in base alla data scelta nel form.
Se io volessi eliminare l'iframe, ed elaborare la pagina con ajax, come potrei fare?
Ovvero:
cambio il codice del form in
codice:
<form action="#" onSubmit="eseguiRichiesta(eventi.asp);return false;">
funzione eseguiRichiesta
codice:
function eseguiRichiesta(url) {
var http_request = false;
if (window.XMLHttpRequest) { // Mozilla, Safari,...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/xml');
// Vedi note sotto
}
} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
alert('Giving up :( Non riesco a creare una istanza XMLHTTP');
return false;
}
http_request.onreadystatechange = function() { alertContents(http_request); };
http_request.open('GET', url, true);
http_request.send(null);
}
function alertContents(http_request) {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
!!!! funzione che mi stampa i risultati della pagina asp !!!!!!
} else {
alert('Si è verificato un problema con la richiesta');
}
}
}
modifico la pagina asp in questo modo (ometto gli script per la connessione e il recordset):
codice:
do while not recset.eof
%>
evento=recset("dal")&"|"&recset("al")&"|"&recset("comune")&"|"&recset("evento")&"|"&recset("descrizione")&"|"&recset("link")
recset.movenext
loop
response.write(evento)
In definitiva, questo script asp, mi stampa un solo evento, invece io vorrei stampare tutti gli eventi presenti in un dato giorno, mentre nello script precedente, dove ho messo i simboli !!! non saprei che mettere per smistare tutti gli eventi che mi stampa la pagina asp.
Vi ringrazio in anticipo per la pazienza e per l'aiuto.