En este tutorial vemos como mostrar el contenido de una carpeta en ASP.
<!DOCTYPE html Public "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Directory listing of MP3s</TITLE>
</HEAD>
<BODY bgcolor="#000000" text="#400080" link="#400080" vlink="#FFFF80">
<%
Dim dirname, mypath, fso, folder, filez, FileCount
dirname = "../mp3s/"
mypath = "../mp3s/"
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(server.mappath(dirname))
Set filez = folder.Files
FileCount = folder.Files.Count
' This function takes a filename and ret
' urns the appropriate image for
' that file type based on it's extension
' . If you pass it "dir", it assumes
' that the corresponding item is a direc
' tory and shows the folder icon.
function ShowImageForType(strName)
Dim strTemp
' Set our working String To the one passed in
strTemp = strName
' if it's Not a directory, Get the extension and Set it to strTemp
' if it is a directory, Then we already have the correct value
if strTemp "dir" Then
strTemp = LCase(Right(strTemp, Len(strTemp) - InStrRev(strTemp, ".", -1, 1)))
End if
response.write strTemp
' Set the part of the image file name that's unique To the Type of file
' To it's correct value and Set this to strTemp. (yet another use of it!)
Select Case strTemp
Case "mp3"
strTemp = "MP3"
Case "mp2"
strTemp = "MP3"
Case "wav"
strTemp = "MP3"
Case "aiff"
strTemp = "MP3"
Case "html"
strTemp = "htm"
Case "m3u"
strTemp = "MP3"
End Select
' All our logic is done... build the IMG Tag For display To the browser
' Place it into... where else... strTemp!
' My images are all GIFs and all start With "dir_" For my own sanity.
' They End With one of the values Set In the Select statement above.
strTemp = "<IMG SRC=""images/dir_" & strTemp & ".gif"" WIDTH=16 HEIGHT=16 BORDER=0>"
' Set return value and Exit function
ShowImageForType = strTemp
End function
'That's it for functions on this one!
%>
<%' Now To the Runtime code:
Dim strPath 'Path of directory to show
Dim objFSO 'FileSystemObject variable
Dim objFolder 'Folder variable
Dim objItem 'Variable used To Loop through the contents of the folder
' You could just as easily read this fro
' m some sort of input, but I don't
' need you guys and gals roaming around
' our server so I've hard coded it to
' a directory I set up to illustrate the
' sample.
' NOTE: As currently implemented, this n
' eeds to end with the /
strPath = mypath
' Create our FSO
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
' Get a handle on our folder
Set objFolder = objFSO.GetFolder(Server.MapPath(strPath))
' Show a little description line and the
' title row of our table
%>
<CENTER><FONT face="Arial" color="#9690CC">
<%= FileCount %> Contents of <B><I>
<%= strPath %></I> Not Counting Any Folders</B></CENTER></FONT><BR><BR>
<TABLE align="center" border="5" bordercolor="#010194" cellspacing="0" cellpadding="2">
<TR bgcolor="#010194">
<TD align="CENTER"><FONT face="Arial" color="#FFFFFF"><B>File Name:</B></FONT>
</TD>
<TD align="CENTER"><FONT face="Arial" color="#FFFFFF"><B>File Size (MB):</B></FONT>
</TD>
<TD align="CENTER"><FONT face="Arial" color="#FFFFFF"><B>Date Created:</B></FONT>
</TD>
<TD align="CENTER"><FONT face="Arial" color="#FFFFFF"><B>File Type:</B></FONT>
</TD>
</TR>
<%
' First I deal with any subdirectories.
' I just display them and when you
' click you go to them via plain HTTP. Y
' ou might want to loop them back
' through this file once you've set it u
' p to take a path as input.
For Each objItem In objFolder.SubFolders
' Deal With the bad VTI's that keep giving our visitors 404's
if InStr(1, objItem, "_vti", 1) = 0 Then
%>
<TR bgcolor="#87BCFE">
<TD align="left">
<%= ShowImageForType("dir") %> <A href="<%= strPath & objItem.Name %>">
<%= objItem.Name %></A>
</TD>
<TD align="right">
<%= objItem.Size/1000000 'I used this To display the file size In MB, you can Set it to default
%>
</TD>
<TD align="left">
<%= objItem.DateCreated 'date of creation
%>
</TD>
<TD align="left">
<%= objItem.Type 'the type of file
%>
</TD>
</TR>
<%
End if
Next 'objItem
' Now that I've done the SubFolders, do
' the files!
For Each objItem In objFolder.Files
%>
<TR bgcolor="#87BCFE">
<TD align="left">
<%= ShowImageForType(objItem.Name) %> <A href="<%= strPath & objItem.Name %>">
<%= objItem.Name %></A>
</TD>
<TD align="right">
<%= objItem.Size/1000000 %>
</TD>
<TD align="left">
<%= objItem.DateCreated %>
</TD>
<TD align="left">
<%= objItem.Type %>
</TD>
</TR>
<%
Next 'objItem
Set objItem = Nothing
Set objFolder = Nothing
' All done! Kill off the object variable
' s.
Set objFSO = Nothing
%>
</TABLE>
</BODY>
</HTML>
Usuarios que han visto este tema también han visto...
- Comenta tu código en ASP
- Valor absoluto de un número
- Validar e-mail
- Evitar la Caché del Navegador con ASP
- Como poner Wiewstate para optimizar Google
- Versión imprimible de este documento
- Enviar por e-mail este documento