- Home
- Categorie
- Coding e Sistemistica
- Altri linguaggi per il web
- data ultima modifica sito
-
@madai said:
Dovresti fare svariati cicli, 1 per ogni cartella ad individuare e memorizzare temporaneamente le date di ultima modifica di ogni documento. Una volta ottenutele tutte dovrai pescare quella maggiore.
difficilissimo insomma....
potresti darmi un'idea su come cominciare?
grazie,Marco
-
Ho modificato questo script per adeguarlo alle tue esigenze:
Dim ultimaModificaSito sub ListContents(path) dim fs, folder, file, item, url set fs = CreateObject("Scripting.FileSystemObject") set folder = fs.GetFolder(path) Response.Write("<li><b>" & folder.Name & "</b> - " & folder.Files.Count & " files, ") if folder.SubFolders.Count > 0 then Response.Write(folder.SubFolders.Count & " directories, ") end if Response.Write(Round(folder.Size / 1024) & " KB total." & vbCrLf) Response.Write("<ul>" & vbCrLf) for each item in folder.SubFolders ListContents(item.Path) next for each item in folder.Files If item.DateLastModified > ultimaModificaSito then ultimaModificaSito = item.DateLastModified End if url = Replace(Right(item.path, Len(item.path) - Len(Server.MapPath("/"))), "\", "/") Response.Write("<li><a href=""" & url & """>" & item.Name & "</a> - " _ & item.Size & " bytes, " _ & "last modified on " & item.DateLastModified & "." _ & "</li>" & vbCrLf) next Response.Write("</ul>" & vbCrLf) Response.Write("</li>" & vbCrLf) end sub ListContents(Server.MapPath("../test")) Response.Write("Ultima modifica sito: <strong>"&ultimaModificaSito&"</strong>")
Ovviamente ha bisogno di quache ritocco qualora tu non voglia stampare a video tutti i files e le cartelle del sito prima di mostrare la data di ultima modifica. A pulire il codice pensaci tu
Ti consiglio di studiarti e capire il codice che ti ho postato non limitarti ad un copia incolla. Se vuoi puoi postare eventuali domande specifiche sulla comprensione del codice che ti ho postato.
PS: ovviamente dovrai sostituire "../test" col percorso della tua root (forse solo "/" se metti questa .asp nella root)
Ciao
-
ciao madai!
ti ringrazio molto per il tempo e l'attenzione che hai dedicato al mio problema!
lo script funziona benissimo e mi è molto chiaro il suo funzionamento (ma nel caso io lo includa in una pagina lui lo ricarica tutte le volte che viene aperta la pagina, vero?).
però mi va in errore in quanto incontra, partendo a scansionare la root, alcune cartelle su cui gli script non hanno i permessi di lettura e poi incontra alcuni file asp protetti da login con cookies.
Le directory non dovrebbe scansionarle (dunque dovrei solo modificarlo in modo che le salti), mentre i file asp dovrebbe vederli...
grazie ancora!Marco
-
@sherlock said:
però mi va in errore in quanto incontra, partendo a scansionare la root, alcune cartelle su cui gli script non hanno i permessi di lettura Chiaro.
@sherlock said:
e poi incontra alcuni file asp protetti da login con cookies.
Ho i miei dubbi che lo script non riesca a scansionare tali files in quanto protetti da cookies. Ci saranno altre ragioni... lo script non interpreta le asp che scansiona ma le tratta come qualsiasi altro file.@sherlock said:
ti ringrazio molto per il tempo e l'attenzione che hai dedicato al mio problema!
Aiutarti è un'esperienza postiva per entrambi (internet rules)A presto!
-
@madai said:
Chiaro.
Ho i miei dubbi che lo script non riesca a scansionare tali files in quanto protetti da cookies. Ci saranno altre ragioni... lo script non interpreta le asp che scansiona ma le tratta come qualsiasi altro file.
Aiutarti è un'esperienza postiva per entrambi (internet rules)
A presto!
in effetti gli asp protetti con login li vede...ma con le directory protette si blocca. dici che dovrei dirgli all'interno del ciclo che scansiona le subfolders che se la directory si chiama xx or yy or zz passi oltre?
grazie ancora,Marco
-
@sherlock said:
dici che dovrei dirgli all'interno del ciclo che scansiona le subfolders che se la directory si chiama xx or yy or zz passi oltre?
Si
-
ciao! scusa la scocciatura, ma non riesco a fargli capire che deve saltare quelle 4 directory...mi puoi dare un consiglio?
grazie!Marco
-
c'è nessunoooooo?!
scusate se scoccio...
grazie!Marco
-
Se volessi evitare solo alcune sottocartelle:
... for each item in folder.SubFolders ** If item.Name <> 'nomeCartelleDaEvitare1' or ****item.Name <> 'nomeCartelleDaEvitare2'**** then ListContents(item.Path) End if** next ... ```Se invece volessi evitare **tutte **le sottocartelle rimuovi completamente il seguente codice:
for each item in folder.SubFolders
ListContents(item.Path)
next
-
[quote=madai;218042]Se volessi evitare solo alcune sottocartelle:
... for each item in folder.SubFolders ** If item.Name <> 'nomeCartelleDaEvitare1' or ****item.Name <> 'nomeCartelleDaEvitare2'**** then** ** ListContents(item.Path)** ** End if** next ...
Ciao,
mi da errore di sintassiIf item.Name <> '/_borders' or item.Name <> '/_codice' or item.Name <> '/_fpclass' or item.Name <> '/_pt' or item.Name <> '/ad' then
che posso fare?grazie!Marco
-
Ho fatto un po' di confusione scusami... per la precisione ho commesso 2 errori.
Primo: sostituisci gli apici singoli con le virgolette
Secondo: sostituisci gli OR con ANDCosì:
If item.Name <> "/_borders" and item.Name <> "/_codice" and item.Name <> "/_fpclass" and item.Name <> "/_pt" and item.Name <> "/ad" then ```:ciauz: