Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Ordinare una collezione di files

    Sul mio server ho una cartella dove carico ogni tanto dei files (ad es dei video) e voglio sul mio sito una pagina che mi faccia vedere tutti i video contenuti in quella cartella...

    Ok ecco il classico codice:
    codice:
    	Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
    	Set objFolder = objFSO.GetFolder(cartellaVideo)
    	Set objFiles = objFolder.Files
    	For Each video in objFiles
    	...
    	Next
    A questo punto il problema:

    io voglio sfogliare la collezione di Files (objFiles) ordinandola in base alla data di ultima modifica (metodo .DataLastModified) decrescente di modo da avere i più nuovi che faccio in alto....

    Come posso fare???

    Grazie in anticipo....
    La verita' è che... tu sei il debole, e io sono la tirannia degli uomini malvagi, ma ci sto provando ringo, ci sto provando con grandissima fatica a diventare il pastore..

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ti conviene usare un database.

    Roby

  3. #3
    Scervellandomi sono arrivato ad una soluzione un po'..... diciamo non del tutto convenzionale, più che altro nell'utilizzo degli array:

    codice:
    	Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
    	Set objFolder = objFSO.GetFolder(phisfolder & "\video")
    	Set objFiles = objFolder.Files
    	strNome = ""
    	strData = ""
    
    	For each video in objFiles
    		strNome = strNome & video.Name & "|"
    		strData = strData & video.DateLastModified & "|"
    
    	'------------------------------ Metto tutti i nomi e le date dei video in due str
    	Next
    	
    	strNome = Left( strNome , Len(strNome) -1 )
    	strData = Left( strData , Len(strData) -1 )
    	' ------------------------------------------ Tolgo l'ultimo separatore
    	
    	nome = Split(strNome, "|")
    	data = Split(strData, "|")
    	' -------------------------------Creo l'array coi nomi e le date splittando le str
    	
    	For i=0 to Ubound(nome)
    		For j=i to Ubound(nome)
    			if data(j) < data(i) then 
    				nomeTemp = nome(j)
    				dataTemp = data(j)
    				nome(j) = nome(i)		'----- Ordino l'array
    				data(j) = data(i)
    				nome(i) = nomeTemp
    				data(i) = dataTemp
    			End If
    		Next
    	Next
    
    	For i= 0 to Ubound(nome)
    		Set video = objFSO.GetFile( phisfolder & "\video\" & nome(i) )
    		...
    	Next
    Non ho ancora capito come fare a creare array senza sapere prima il num di elementi che deve contenere... Ho provato a fare "Dim" con una variabile integer, ma mi da errore xkè vuole una costante integer..... Ho provato a fare "Dim array()", ma quando vado a scrivergli il primo elemento (di indice 0) mi da errore, indice non consentito... L'unico modo in cui sono sicuro è usando la finzione "Split"....

    Se qualcuno conosce un metodo più immeidato per dichiarare array e ordinare la mia collezione di files accetto consigli....
    La verita' è che... tu sei il debole, e io sono la tirannia degli uomini malvagi, ma ci sto provando ringo, ci sto provando con grandissima fatica a diventare il pastore..

  4. #4
    Grazie Roby x aver risp... ormai non ci speravo più....

    Il probl è che non devo usarlo io.... è per un cliente a cui ho insegnato ad usare il client FTP x caricare delle foto... ed è già un traguardo!!

    Se dovessi metterlo in condizioni di aggiornare un DB.... sì potrei farlo, ma perderei la semplicità d'uso che tanto vantavo....
    La verita' è che... tu sei il debole, e io sono la tirannia degli uomini malvagi, ma ci sto provando ringo, ci sto provando con grandissima fatica a diventare il pastore..

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Intedevo che il tuo cliente dopo aver caricato le foto in FTP poteva richiamare una semplice pagina che:
    - legge tutti i file
    - li inserisce in un db

    A quel punto quando li vuoi visualizzare ordinati basta tener conto del campo del db che contiene la data (datelastmodified).

    Roby

  6. #6
    Quindi la soluz con gli array nn ti soddisfa? Perché in effetti la soluzione che mi hai proposto è molto buona...

    Poi vorrei sapere se riescia chiarirmi il mio dilemma con gli array....

    Grazie
    La verita' è che... tu sei il debole, e io sono la tirannia degli uomini malvagi, ma ci sto provando ringo, ci sto provando con grandissima fatica a diventare il pastore..

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.