Questa pagina dimostra come creare un semplice contatore di accesso (testuale o con immagini) tramite ASP. Con l'aiuto di alcuni oggetti per creare/scrivere/leggere file sul server, é possibile farlo in pochi secondi.
L'oggetto FileSystem é usato per accedere al file in cui vanno memorizzati gli accessi. L'oggetto TextStream é usato per leggere e scrivere sul file in questione.
Per un contatore testuale questo codice é più che sufficiente:
myfile="c:\inetpub\www\mypath\counter_mysite.txt"
Set fs=CreateObject("Scripting.FileSystemObject")
Set a=fs.OpenTextFile(myfile)
visita=CInt(a.ReadLine)
if Len(Session("visita"))=0 then
Session("visita")=visita
visita=visita+1
a.close
Set a=fs.CreateTextFile(myfile, True)
a.WriteLine(visita)
end if
a.Close
Response.Write visita
La prima azione effettuata da questo script é aprire il file (il percorso deve essere adattato al proprio caso, anche con l'ausilio di un MapPath ), leggere l'ultimo valore, convertirlo in interi, quindi verificare che questa sia la prima visita effettuata alla pagina e solo in questo caso aggiungere 1 al numero. In questo modo si ottine un contatore di solo testo. L'ultima parte dello script scrive sul file l'incremento e chiude il tutto, visualizzando il numero delle visite. Per far funzionare il tutto deve essere inserito nel percorso che viene dichiarato nella variabile myfile un file con lo stesso nome specificato nella variabile e che abbia come contentuo 0 (a numeri) oppure il numero di visitatori da cui si vuole partire.
Se invece serve un contatore che visualizzi dei numeri come immagini, si può usare questo script
myfile="c:\inetpub\www\mypath\counter_mysite.txt"
Set fs=CreateObject("Scripting.FileSystemObject")
Set a=fs.OpenTextFile(myfile) visita=CInt(a.ReadLine)
if Len(Session("visita"))=0 then
Session("visita")=visita
visita=visita+1
a.close
Set a=fs.CreateTextFile(myfile, True)
a.WriteLine(visita)
end if
a.Close
lung=CInt(Len(visita))
visita=CStr(visita)
Response.Write "<img src=""immagini/contdx.gif"">"
for i=1 to lung
Response.Write "<img src=""immagini/cont"&Mid(visita, i, 1)&".gif"">"
next
Response.Write <"img src=""immagini/contsx.gif"">"
Il funzionamento di questo script é simile al precedente, con la sola differenza che questo ha bisogno che sotto la cartella immagini, si trovino dei file con nome cont0.gif....etc fino a cont9.gif che rappresentino i vari numeri. Sono anche necessari i file contdx.gif che rappresenta il bordo destro ed il file contsx.gif che rappresenta il border sinistro. Il funzionamento é del tutto simile allo script precedente, escluso la routine di visualizzazione delle immagini. L'incoveniente di uno script di questo tipo rispetto ad un cgi é che i numeri vengono richiamati come singole immagini, per cui ci può essere un caricamento non proprio sincronizzato, a differenza di quanto avviene con gli script CGI. Il punto di forza é che si può praticamente cambiare di tutto ed in più usare come immagini quelle che si preferisce, oltre al fatto di appesantire di meno il server, riuscendo ad occupare minori risorse, grazie al fatto che il tutto viene generato direttamente dal file .asp
Contenuti dell'articolo
- I nuovi controlli di ASP.NET 3.5: LinqDataSource, ListView e DataPager
- Galleria fotografica dinamica con ASP.NET AJAX
- Usare Search come un servizio nei tuoi siti e nei tuoi client
- Mappe nel tuo sito con Virtual Earth
- Integrare Windows Live ID, Contacts e Presence API nelle tue applicazioni
- Introduzione ai cloud based service con Windows Live Services
- Realizzare un custom extender AJAX con ASP.NET 3.5
- Tracciare le modifiche ai dati e allineare i datawarehouse con il Change Data Capture in SQL Server 2008
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.




Difficoltà
Stampa
Download 


10annidi.ASPItalia.com: iscriviti alla competizione e vinci fantastici premi ogni mese!