VBScript a partire dalla versione 5.0 ha un supporto rundimentale per le classi.
Non si può certo parlare di programmazione object oriented (perchè le mancanze sono ancora tante) ma sicuramente è utile cominciare a lavorare con le classi, anche in proiezione di utilizzare (o perchè si utilizza) il .NET Framework.
L'unico codice da spiegare è relativo alle due sub, Class_Initialize e Class_Terminate, che sono invocate rispettivamente quando l'oggetto viene instanziato e quando viene deallocato.
Per il resto ogni funzione/sub pubblica non sarà altro che un metodo della classe.
<%
Class ASPItalia
' dichiaro l'oggetto visibile in tutta la classe
Dim conn
' invocato quando viene instanziata la classe
Private Sub Class_Initialize()
strConn = "Provider=sqloledb; Data Source=(local); Initial Catalog=pubs; Integrated Security=SSPI;"
set conn = Server.CreateObject("ADODB.Connection")
conn.Open strConn
End Sub
' invocato quando viene deallocata la classe
Private Sub Class_Terminate()
if IsObject(conn) Then
conn.Close
set conn = Nothing
end if
End Sub
' funzione pubblica
Public Function Estrai(tabella)
' codice dello script #372
Set rs = conn.Execute("SELECT * FROM " & tabella)
' ricavo il nome dei campi
For i = 0 to RS.Fields.Count - 1
intestazione = intestazione & "<th bgcolor=gray>" & RS(i).Name &"</th>"
Next
' prendo i dati dal db
strResults = rs.GetString(, 10,"</td><td>","</td></tr><tr><td>","-")
set rs = nothing
' output
Estrai = "<table border=1>" & _
"<tr>" & intestazione & "</tr>" & _
"<tr><td>" & _
strResults & _
"</td></tr></table>"
End Function
End Class
'utilizzo l'oggetto
set objASPItalia = New ASPItalia
Response.Write ( objASPItalia.Estrai("authors") )
set objASPItalia = Nothing
%>Per aggiornare i motori di scripting è sufficiente utilizzare IE 6, oppure scaricarli dal sito
http://msdn.microsoft.com/scripting/
L'esempio qui mostrato riprende quanto già spiegato nello script:
#372 - Un semplice Datagrid con ASP
https://www.aspitalia.com/liste/usag/script.aspx?ID=372
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.


