Con questo script è possibile conoscere il valore della dimensione in bytes di una cartella:

<%

Dim objFSO

Set objFSO = Server.CreateObject(“Scripting.FileSystemObject”)

‘Stabilisco il percorso della cartella

path = “c:\miaCartella”

‘Imposto l’istanza

Set mia = objFSO.GetFolder(path)

‘Visualizzo la dimensione della cartella

Response.write “La cartella è grande ” & mia.Size & ” bytes.”

Set objFSO = Nothing

%>

Quando si pubblicano dati variabili che si aggiornano frequentemente, è

possibile far ricaricare la pagina ogni volta che vi si accede (non viene memorizzata in cache):

<% Response.Expires = 0 %>

Permette di forzare un “expires” a tempo zero.

Deve essere inserito in testa alla pagina.

%= al numero di minuti desiderati

Aggiungere righe al log di IIS è possibile utilizzando il metodo Response.AppendToLog.

Esempio:

<%

Response.AppendToLog(“Errore”)

%>

L’uscita sul log di IIS sarà:

110.123.76.11, – , 12/10/01, 21:22:21, W3SVC, prova, 110.123.46.11, Errore

E’ possibile conoscere l’indirizzo IP degli utenti che visitano la pagina, utilizzando questo piccolo script:

<%

anyVariable = Request.ServerVariables(“REMOTE_ADDR”)

%>

Connettersi ad un Database quando non si hanno i diritti amministrativi

per operare su ODBC e’ piu’ semplice di quanto si pensi.

Utilizzando la procedura DSN-less, e’ possibile collegarsi a database residenti nella nostra virtual root.

objConn.ConnectionString = “DBQ=C:\Webcondivisa\Nomedatabase.mdb;DRIVER={MS Access (*.mdb)}”

E’ possibile bloccare un utente che non provenie da un ip specifico. Ecco il codice:

<%

IPAddress = Request.ServerVariables(“REMOTE_ADDR”)

If IPAddress <> “200.123.77.225” Then

Response.Status = “403 Access Forbidden”

Response.Write Response.Status

Response.End

End If

%>

Session.Abandon Permette di eliminare tutti i valori contenuti in una variabile di sessione, solo dopo che lo script è stato eseguito.

ES:

prova1.asp

session(“variabile”)=”html.it

response.write (session(“variabile”))&” numero “&Session.SessionID

Session.Abandon

risultato

html.it numero 445107232

prova2.asp

response.write ” numero “&Session.SessionID

risultato

numero 445123432

Il secondo file ha cambiato il numero di sessione

La funzione Include permette di inserire file esterni all’interno di una procedura ASP.

Si possono inserire, file di testo, script e altro.

Un esempio per rendere l’idea e’ aggiungere ad un peso netto, il peso della confezione.

<%

‘il peso e’ Kg.10

Dim fpeso

fpeso = 10

‘Ora mostro il peso netto piu’ la confezione

Response.Write “Peso complessivo: ” & Adjustedpeso(fpeso)

%>

Per aggiungere il peso della confezione aggiungo un file di inclusione

chiamandolo peso.txt, cosi’ composto:


<%

function Adjustedpeso(totalpeso)

Adjustedpeso = totalpeso + 0.5

end function

%>

Quindi il file .asp diventa:

<!–#include file=”peso.txt”–>

<%

‘il peso e’ Kg.10

Dim fpeso

fpeso = 10

‘Ora mostro il peso netto piu’ la confezione

Response.Write “Peso complessivo: ” & Adjustedpeso(fpeso)

%>

Come posso aggiungere a folder specifici nuove path?

Un metodo che permette questo è FileSystemObject.CreateFolder.

<%

dim filetest, nuovadir

set filetest =CreateObject(“Scripting.FileSystemObject”)

nuovadir = filetest.CreateFolder(c:\inetpub\wwwroot, “nome_directory”)

%>

Per mezzo di questo script:

<html>

<head>

<title>Ordinare i record casualmente</title>

</head>

<body bgcolor=”#ffffff”>

<%

‘Connessione al database

Dim rs, cn, sql

sql = “SELECT * FROM tabella”

Set cn = Server.CreateObject(“ADODB.Connection”)

Set rs = Server.CreateObject(“ADODB.Recordset”)

cn.Open “DSN=nomeDSN;”

Set rs.ActiveConnection = cn

rs.CursorType = 3

rs.LockType = 3

rs.Open sql, cn

%>

<center>

<%

rs.moveLast

conta = rs.recordCount

conta1 = conta

max = conta

‘Necessario inserire un valore massimo

If 50 < conta Then

conta1 = 50

Else

If conta > 10 AND conta < 50 then conta1 = conta1 – 2

End If

str = “,”

str1 = “,”

Do Until conta1 = 0

‘Genero i valori random per la ricerca all’interno del recordSet

‘per estrapolare record casualmente

Randomize

RndNumber = Int(Rnd * max)

If (InStr(1, str1, “,” & RndNumber & “,” ) = 0) Then

str1 = str1 & RndNumber & “,”

conta1 = conta1 – 1

rs.moveFirst

rs.move RndNumber

str = str & rs(“ID”) & “,”

End If

Loop

rs.Close

Set rs=Nothing

Set rs = Server.CreateObject(“ADODB.Recordset”)

‘Genero la query random

If sql = “SELECT * FROM tabella” then

sql = “SELECT * FROM tabella WHERE (((InStr(1,'” & str & “‘,(‘,’ & [ID] & ‘,’)))<>0))”

Else

sql = sql & ” AND (((InStr(1,'” & str & “‘,(‘,’ & [ID] & ‘,’)))<>0))”

End if

Set rs.ActiveConnection = cn

rs.CursorType = 3

rs.LockType = 3

rs.Open sql, cn

%>

<% Do until (rs.eof) %>

<!– Visualizzo i risultati della query random –>

<%= rs(“nomeCampo”) %>

<!– ***************************************** –>

<% rs.MoveNext

Loop

rs.Close

Set rs=Nothing %>

</body>

</html>

è possibile ordinare casualmente i risultati della query effettuata sul database