Carissimi,
ho questo script
che include quest'altrocodice:<script language=javascript src='treeview.js'></script> <% set fso = CreateObject("Scripting.FileSystemObject") vDir = "/database/double/DOUBLE_NANO_MEM/DOWNLOAD_DOCUMENTS/" 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 %>
Questi script leggono i file da cartelle sul web, però se devo scaricare questi file e il loro nome contiene uno spazio, il link per il download si interrompe li.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>" & f.name & "</div><div id='" & d & "'" & _ " >" 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>" & f.name & "</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 %>
Esempio:
Nome file: prova 2.pdf
il link al download sarà: www.miosito.it/cartella/prova
Come mai non riconosce gli spazi?
Grazie per l'aiuto.
G.

Rispondi quotando