Informatica (8372)

sharky sharky
Di sharky sharky

Prova di informatica dell'ISTITUTO TECNICO IND. INFORMATICO

il codice è in asp

<%
'Creo la variabile Action
Dim Action
Action = request.form("act"

'Se Action è vuoto stampo il modulo
if Action = "" then
%>

<form method="POST">
<input type="hidden" name="act" value="salva">
<table border="0">
<tr><td>Tua Email</td><td><input type="text" name="email" size="30"></td></tr>
<tr><td>Username</td><td><in put type="text" name="user" size="30"></td></tr>
<tr><td>Password</td><td><in put type="password" name="pass" size="30"></td></tr>
<tr><td colspan="2"><input type="submit" value="ISCRIVITI"></td></tr>

</table>
</form>


<%
'Se Action ha come valore "salva"...
'Inserisco i valori del modulo nel DB
elseif Action = "salva" then

'Apro la connessione al DB
Dim Conn
Set Conn = Server.CreateObject("ADODB.Connection"
Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&_
Server.MapPath("utenti_sito.mdb" )

'Aggiungo un nuovo record al DB
Dim Rs
Set Rs = Server.CreateObject("ADODB.Recordset"
Rs.Open "UTENTI", conn, 1, 3
Rs.AddNew()
Rs("email" = request.form("email"
Rs("user" = request.form("user"
Rs("pass" = request.form("pass"
Rs("stato" = False
Rs.Update

'chiudo recordset e connessione
Rs.Close
set Rs = Nothing
Conn.Close
set Conn = Nothing

'Messaggio a video di conferma
response.write "Registrazione avvenuta con successo"
response.end

end if
%>


Gestire i backup è un operazione tanto utile quanto lunga e noiosa. Effettuare copie di sicurezza dei nostri contenuti online è certamente una buona abitudine, tuttavia parlare di backup manuali diventa improponibile quando la mole di dati da copiare diventa piuttosto corposa.

In questa situazione è utile dotarsi di qualche sistema automatizzato per effettuare le copie dei nostri preziosi file. In questo articolo vedremo appunto, come creare un piccolo script per effettuare il backup completo dei tutti i file e cartelle del nostro sito web!

Per farlo faremo ricorso all'oggetto FileSystemObject ed in particolar modo al metodo CopyFile.

Vediamo il codice del nostro nuovo file backup.asp che andremo a salvare nella root del nostro sito web. Function backup()
' Dimensiono le variabili
Dim bckdir, fso, folder, subfolders, subfolder, files, file
' Creo l'oggetto FileSystem
Set fso = CreateObject("Scripting.FileSystemObject"

' Imposto e creo la cartella di backup
bckdir = "backup_" & Replace(FormatDateTime(Date(),2),"/","-"
If NOT fso.FolderExists(Server.MapPath(bckdir)) Then
fso.CreateFolder(Server.MapPath(bckdir))
End If

' Attivo la cartella corrente (la Root del nostro sito)
Set folder = fso.getfolder(Server.MapPath("/")

' Recupero le sottocartelle
Set subfolders = folder.Subfolders
' Ciclo le sotto-cartelle
For each subfolder in subfolders
' Evito di copiare la carella di backup
If subfolder.name <> bckdir Then
' Copio le sotto-cartelle nella cartella di backup
fso.CopyFolder subfolder, Server.MapPath(bckdir & "/" & subfolder.name)
End If
Next

' Recupero i file contenuti direttamente nella Root
Set files = folder.files
' Ciclo i files
For Each file in files
' Copio nella cartella di backup
fso.CopyFile file.path, Server.MapPath(bckdir & "/" & file.name)
Next

' Stampo un messaggio di conferma
Response.Write "Backup eseguito con successo!"
End Function

' Richiamo la funzione di backup
Call backup()

Possiamo anche studiare una variante particolare per effettuare il backup solo di alcuni file particolarmente importanti, come ad esempio i database.

Vediamo una semplice funzione per fare il backup (solo) dei database Access: Function mdb_backup(dir)
' Dimensiono le variabili
Dim fso, folder, files, File
' Creo l'oggetto FileSystem
Set fso = CreateObject("Scripting.FileSystemObject"

' Imposto e creo la cartella di backup per i file mdb
bckdir = "backup_mdb_" & Replace(FormatDateTime(Date(),2),"/","-"
If NOT fso.FolderExists(Server.MapPath(bckdir)) Then
fso.CreateFolder(Server.MapPath(bckdir))
End If

' Attivo la cartella
Set folder = fso.getfolder(Server.MapPath(dir))
' Recupero i files contenuti nella cartella
Set files = folder.files
' Ciclo i files
For Each file in files
' Se il file ha estensione mdb procedo alla copia nella cartella di backup
If fso.GetExtensionName(file.path) = "mdb" then
fso.CopyFile file.path, Server.MapPath(bckdir & "/" & file.name)
End If
Next

' Stampo un messaggio di conferma
Response.Write "Backup eseguito con successo!"
End Function

' Lancio la funzione specificando la cartella che contiene i db Access
Call mdb_backup("/database/mdb"

Commenti
Skuola | TV
Ogni ragazzo è speciale!

'Miss Peregrine - La casa dei ragazzi speciali' questo e molto altro nella prossima puntata della Skuola Tv!

14 dicembre 2016 ore 16:30

Segui la diretta