Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630

    massimo 2 sottocartelle

    Carissimi
    utilizzo questo script come file manager, ma ho notato una cosa...
    Al di sotto di 2 sottocartelle non mi fa visionare le altre cartelle come mai?
    Si potrebbe modificare e come?
    Grazie 1000
    G.

    codice:
    <html>
    <head>
    <title>TreeView</title>
    <link rel=stylesheet href='treeview.css'></link>
    </head>
    </html>
    
    <script language=javascript src='treeview.js'></script>
    
    
    <%
    	set fso = CreateObject("Scripting.FileSystemObject")
    
    	vDir = "/public/"
    	root = Server.MapPath(vDir) & "\"
    	set fold = fso.getFolder(root)
    
    	' we'll assume that the starting point is not empty
    	' (has at least one subfolder or one file)
    	
    	response.write getfoldlink("r0", "r0", fold, vDir)
    	if fold.subfolders.count > 0 then
    	
    		' counter
    		r1c = 0
    		
    		'loop through all subfolders in starting folder
    		for each f in fold.subfolders
    		
    			' another counter
    			r1c = r1c + 1
    
    			' concatenate local/relative path once			
    			sfoldname = root & f.name & "\"
    			fpath = vDir & f.name & "/"
    			
    			set cfold = fso.getFolder(sfoldname)
    			if cfold.subfolders.count > 0 or cfold.files.count > 0 then
    
    				' we need to make the folder a tree node
    				response.Write getfoldlink("r1" & r1c, "r1", cfold, fpath)
    
    				' reset counter
    				r2c = 0
    				
    				for each sf in cfold.subfolders
    
    					' keep track to identify nodes by id
    					r2c = r2c + 1
    
    					' concatenate local/relative path once			
    					sfoldname = root & f.name & "\" & sf.name & "\"
    					path = vDir & f.name & "/" & sf.name & "/"
    
    					' build an identifier for this node
    					id = "r2" & r1c & "_" & r2c
    					
    					set sfold = fso.getFolder(sfoldname)
    					if sfold.files.count > 0 then
    					
    						' we need to make the folder a tree node
    						response.Write getfoldlink(id, "r2", sfold, path)
    						for each fil in sfold.files
    							response.write getfilelink("r2a", path, fil)
    						next
    						response.Write "</div>"
    					else
    
    						' this folder is not an expandable node
    						response.write getfoldlink("", "r2", sfold, path)
    					end if
    				next
    				for each fil in cfold.files
    				
    					' show each file in this subfolder
    					response.write getfilelink("r1a", fpath, fil)
    				next
    				response.Write "</div>"
    			else
    			
    				' this folder is not an expandable node
    				response.Write getfoldlink("", "r1", cfold, fpath)
    			end if
    		next
    	end if
    	for each fil in fold.files
    	
    		' show the files in the starting folder
    		response.write getfilelink("r0a", vDir, fil)
    	next
    	response.Write "</div>"
    	
    	set fso = nothing
    %>
    Il file di iclusione è:
    codice:
    <%
    	function getfoldlink(d, c, f, p)
    		if d <> "" then
    		
    			' needs to be clickable
    			getfoldlink = "<a href='#' style='cursor:hand' " & _
    				"onclick='flip(""" & d & """);" & _
    				"this.blur();return false;'>" & _
    				"<img id='i" & d & "' class=" & c & _
    				" src=plus.gif vspace=0 hspace=2 border=0>" & _
    				"<img src=folder.gif hspace=2 border=0></a>" & _
    				"<a target=_blank href=" & p & getsftitle(f) & _
    				">" & f.name & "</a></div><div id='" & d & "'" & _
    				" display=none style='display:none'>"
    		else
    		
    			' can't be clickable
    			getfoldlink = "<div><img id='i" & d & "' " & _
    				"class=" & c & " src=plus.gif vspace=0 " & _
    				"hspace=2 visibility=hidden style='visibility:hidden'><img" & _
    				" src=folder.gif hspace=2><a " & _
    				"target=_blank href=" & p & getsftitle(f) & _
    				">" & f.name & "</a></div>"
    		end if
    	end function
    	
    	function getfilelink(c, fold, file)
    		getfilelink = "<div><img class=" & c & " src=file.gif" & _
    			" hspace=2><a href=" & fold & file.name & _
    			getfiletitle(file) & ">" & file.name & "</a></div>"
    	end function
    	
    	function getfiletitle(file)
    		getfiletitle = " title='Size: " & _
    			formatnumber(file.size/1024, 2, -1, 0, -1) & _
    			" kb" & vbCrLf & getDL(file) & "'"
    	end function
    	
    	function getsftitle(fold)
    		getsftitle = " title='" & getsfc(fold) & _
    		vbCrLf & getfc(fold) & _
    		vbCrLf & getfs(fold) & _
    		vbCrLf & getDL(fold) & "'"
    	end function
    	
    	function getDL(o)
    		d = o.dateLastModified
    		getDL = "Last mod: " & formatdatetime(d, 2) & _
    			" " & formatdatetime(d, 3)
    	end function
    	
    	function getfc(fold)
    		getfc = fCount(fold.files.count)
    	end function
    
    	function getsfc(fold)
    		getsfc = sfCount(fold.subfolders.count)
    	end function
    	
    	function getfs(fold)
    		getfs = "Size: " & bToMB(fold.size)
    	end function 
    
    	function bToMB(b)
    		bToMB = formatnumber(b/1024/1024, 2, -1, 0, -1) & " MB"
    	end function
    	
    	function fCount(c)
    		fCount = formatnumber(c, 0, -1, 0, -1) & " file" & _
    			suffix(c)
    	end function
    		
    	function sfCount(c)
    		sfCount = formatnumber(c, 0, -1, 0, -1) & _
    			" subfolder" & suffix(c)
    	end function
    	
    	function suffix(c)
    		if c <> 1 then suffix = "s"
    	end function
    %>

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    nessuno può aiutarmi?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    Nessun aiuto?

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    up

  5. #5
    siccome l'ho presa un po' come una sfida (... ) ti ho preparato questo
    funziona, ma non so se va bene per le tue esigenze
    ed è molto meno incasinato di quella roba che hai pubblicato te (che per altro a me non funzionava affatto bene)
    codice:
    <%
    'recupero la cartella e l'eventuale percorso, per potermi muovere tra le varie cartelle
    cartella=request.querystring("cartella")
    vDir=request.querystring("vDir")
    
    'indico la cartella main quella in cui eseguirà le operazioni
    main="/public/"
    
    set fso = CreateObject("Scripting.FileSystemObject")
    
    
    if vDir="" or vDir=main then
    'se mi trovo al percorso iniziale non devo aggiungere "/"
    	vDir = main&cartella
    else
    'saltrimenti recupero il percorso corretto e lo rendo leggibile dal mappath, 
    'tolgo le "/" in eccesso
     if right(vDir,1)="/" then
      vDir=left(vDir,len(vDir)-1)
     end if
     'se la cartella da riportare non è vuota la inserisco al perorso attuale
     if cartella<>"" then
        vDir=vDir&"/"&cartella
     end if
    end if
    
    	root = Server.MapPath(vDir) & "\"
    	set fold = fso.getFolder(root)
    	'inserisco la possibilità di andare alla cartella main in qualunque momento
    %>
    
    <%=main%>
    
    
    
    <%
    'stampo a video il percorso in cui mi trovo
    response.write vDir%>
    <%
    Set objFiles = fold.Files 
    'recupero il percorso precedente a quello attuale per poter tornare alla cartella superiore
    if replace(vDir,"/","")<>replace(main,"/","") then
    arr=Split(vDir, "/")
    indietro=""
    for i =1 to ubound(arr)-1
     indietro=indietro&"/"&arr(i)
    next
    %>
    /..
    
    <%
    end if
    'recupero e stampo tutte le sottocartelle della cartella in questione
    for each cartella in fold.subfolders
    %>
    [img]image.jpg[/img]<%=cartella.name%> 
    
    <%
    next
    'recupero e stampo tutti i file della cartella in questione e li linko
    for each strFile in objFiles 
    %>
    " target="_blank"><%=strFile.name%>
    <%
    next 
    
    %>
    ho la sensazione che i commenti incasinino un po' le idee XD

    ad ogni modo qua puoi vedree un esempio di come funziona

    fammi sapere

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    Grambo, non ho modi di ringraziarti per il tuo impegno a trovarmi una soluzione.
    Il tuo script è perfetto, ma purtroppo a me serve in quel modo, con l'apertura delle cartelle etc.
    Vedi a questo link come funziona quello

    Qui

    Ancora grazie.
    G.

  7. #7
    grafica a parte ho modificato per fare ciò che chiedi ma purtroppo ci si ferma alla 2 sottocartella come nel tuo script,
    oltre sembra impossibile ricreare l'albero
    o almeno non riesco a trovare un modo

    XD accontentati di 2

  8. #8
    c'è di buono che il programmino li lo sto sistemando per bene e lo userò io XD
    come file manager per le stampe e file archiviati dal mio gestionale

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    2,630
    Mi fa piacere che ti ho stimolato a crearlo e completarlo.
    Ma purtroppo come ti dicevo a me serviva in quel modo cioè ad albero..
    Grazie ugualmente...

  10. #10
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,781
    @djjunior, ora non posso studiarmi quello script

    prova con questo

    http://www.aspitalia.com/articoli/in...a_risorse.aspx

    vedi se fa il caso tuo
    con un po' d'impegno lo potrai adattarre a tutte le tue esigenze

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.