Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

eduardojipa

Excluir arquivos da pasta

Recommended Posts

Bom gente eu adaptei 2 sistemas q tinha q fiz um que faz o upload e baixa os arquivos, bem legal e resolveu meu problema:

 

Index.html

<HTML>

<head>
<title>Upload</title>
</head>

<BODY BGCOLOR="#FFFFFF">

<h1><font size="2" face="Tahoma" color="#C0C0C0"><b>Upload</b></font></h1>
<HR color="#000000" size="1">

<FORM METHOD="POST" ACTION="upload.asp" ENCTYPE="multipart/form-data">
  <INPUT TYPE="FILE" NAME="FILE1" SIZE="50"><BR>
  <INPUT TYPE="FILE" NAME="FILE2" SIZE="50"><BR>
  <INPUT TYPE="FILE" NAME="FILE3" SIZE="50"><BR>
  <INPUT TYPE="FILE" NAME="FILE4" SIZE="50"><BR>
  <INPUT TYPE="SUBMIT" VALUE="Upload">
</FORM>

</BODY>
</HTML>

 

upload.asp

ASP

[*]<HTML>

 

[*]<head>

 

[*]<title>Upload</title>

 

[*]</head>

 

[*]<BODY BGCOLOR="#FFFFFF">

 

[*]<h1><font face="Tahoma" color="#C0C0C0" size="2"><b>Upload</b></font></h1>

 

[*]<HR size="1" color="#000000">

 

[*]<%

 

[*]' Variaveis

 

[*]' *********

 

[*]  Dim mySmartUpload

 

[*]  Dim intCount

 

[*]

 

[*]' Criando o Objeto

 

[*]' ***************

 

[*]  Set mySmartUpload Server.CreateObject("aspSmartUpload.SmartUpload")

 

[*]

 

[*]' Upload

 

[*]' ******

 

[*]  mySmartUpload.Upload

 

[*]

 

[*]' Diretório Físico para onde os aquivos devem ser colocados:

 

[*]' ****************************************************************************

 

[*]  'intCount mySmartUpload.Save("files\")

 

[*]  ' sample with a physical path 

 

[*]  intCount mySmartUpload.Save("caminho do diretorio\files\")

 

[*]

 

[*]' Mostra a quantidade de arquivos

 

[*]' ************************************

 

[*]  Response.Write(intCount & " file(s) uploaded.")

 

[*]%>

 

[*]</BODY>

 

[*]</HTML>

 

e mostra.asp

ASP

[*]<%

 

[*]'Declara as variáveis a serem usadas

 

[*]Dim Local, Folder, File, ObjFS, objRootFolder 

 

[*]'Especifica o endereço do conteúdo a ser exibido

 

[*]Local "caminho do diretorio\files\"

 

[*]

 

[*]'Cria o objeto FileSystemObject

 

[*]Set ObjFS Server.CreateObject("Scripting.FileSystemObject")

 

[*]Set objFolder ObjFS.GetFolder(Local)

 

[*]

 

[*]Response.Write "<table border='1' bordercolor='gainsboro' cellpadding=2 cellspacing=0 width='100%' style='font-family: Tahoma, Arial; font-size: 11px;'>"

 

[*]Response.Write " <tr style='background: gainsboro'>"

 

[*]Response.Write " <td><b>Nome</b></td>"

 

[*]Response.Write " <td><b>Tipo</b></td>"

 

[*]Response.Write " <td><b>Tamanho em bytes</b></td>"

 

[*]Response.Write " <td><b>Data da última modificação</b></td>"

 

[*]Response.Write " </tr>"

 

[*]

 

[*]'Exibe pastas encontradas

 

[*]For Each Folder in objFolder.Subfolders

 

[*]Response.Write " <tr>"

 

[*]Response.Write " <td>" & Folder.Name & "</td>"

 

[*]Response.Write " <td>" & Folder.Type & "</td>"

 

[*]Response.Write " <td align=right>" & Folder.Size & "  </td>"

 

[*]Response.Write " <td>" & Folder.DateLastModified & "</td>"

 

[*]Response.Write " </tr>"

 

[*]Next

 

[*]

 

[*]'Exibe arquivos encontrados

 

[*]For Each File in objFolder.files

 

[*]Response.Write " <tr>"

 

[*]Response.Write " <td><a href=files/" & File.Name & ">" & File.Name & "</a></td>"

 

[*]Response.Write " <td>" & File.Type & "</td>"

 

[*]Response.Write " <td align=right>" & File.Size & "  </td>"

 

[*]Response.Write " <td>" & File.DateLastModified & "</td>"

 

[*]Response.Write " </tr>"

 

[*]Next

 

[*]

 

[*]Response.Write "</table>"

 

[*]

 

[*]'Elimina variáveis da memória 

 

[*]Set Local = Nothing

 

[*]Set File = Nothing

 

[*]Set objFolder = Nothing

 

[*]Set Folder = Nothing

 

[*]%>

 

Função que faz o download:

 

<a href=files/" & File.Name & ">" & File.Name & "</a></td>"

 

Agora só preciso adaptar na página mostra.asp uma maneira de excluir o arquivo, se alguém puder ajudar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma forma que se pode fazer é passar um parametro que informe ao sistema que você quer deletar e em outra variável passar o caminho/nome do arquivo.

 

Para deletar você usa FSO mesmo:

ASP
  1. <%
     
  2. dim fs
     
  3. Set fs=Server.CreateObject("Scripting.FileSystemObject"
     
  4. fs.CreateTextFile("c:\test.txt",True)
     
  5. if fs.FileExists("c:\test.txt"then
     
  6. fs.DeleteFile("c:\test.txt")
     
  7. end if
     
  8. set fs=nothing
     
  9. %>

(exemplo retirado do W3School)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma forma que se pode fazer é passar um parametro que informe ao sistema que você quer deletar e em outra variável passar o caminho/nome do arquivo.

 

Para deletar você usa FSO mesmo:

ASP

[*]<%<br />dim fs<br />Set fs=Server.CreateObject("Scripting.FileSystemObject") <br />fs.CreateTextFile("c:\test.txt",True)<br />if fs.FileExists("c:\test.txt"then<br /> fs.DeleteFile("c:\test.txt")<br />end if<br />set fs=nothing<br />%>

(exemplo retirado do W3School)

<{POST_SNAPBACK}>

Como faço pra adaptar isso no código...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Jipa, vou fazer de uma forma aqui aproveitando o seu arquivo, substitua essa parte:

ASP
  1. For Each File in objFolder.files
     
  2. Response.Write " <tr>"
     
  3. Response.Write " <td><a href=files/" & File.Name & ">" & File.Name & "</a></td>"
     
  4. Response.Write " <td>" & File.Type & "</td>"
     
  5. Response.Write " <td align=right>" & File.Size & "  </td>"
     
  6. Response.Write " <td>" & File.DateLastModified & "</td>"
     
  7. Response.Write " </tr>"
     
  8. Next

Por:

ASP
  1. For Each File in objFolder.files
     
  2. If Request("Acao""Excluir" And Request("Nome"File.Name Then
     
  3. Response.Write " <tr>"
     
  4. Response.Write " <td>"File.Name &" - Arquivo Excluido!</td>"
     
  5. Response.Write " <td> - </td>"
     
  6. Response.Write " <td align=right> - </td>"
     
  7. Response.Write " <td> - </td>"
     
  8. Response.Write " </tr>"
     
  9. ObjFS.DeleteFile(Server.MapPath("Files/"File.Name))
     
  10. Else
     
  11. Response.Write " <tr>"
     
  12. Response.Write " <td><a href=files/" & File.Name & ">" & File.Name & "</a> | <a href=?acao=Excluir&Nome="File.Name &">Excluir></a></td>"
     
  13. Response.Write " <td>" & File.Type & "</td>"
     
  14. Response.Write " <td align=right>" & File.Size & "  </td>"
     
  15. Response.Write " <td>" & File.DateLastModified & "</td>"
     
  16. Response.Write " </tr>"
     
  17. End If
     
  18. Next

Espero que funcione a contento.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não funcionou, achei q era uns erros de espaços, coloquei assim:

 

ASP

[*]For Each File in objFolder.files

 

[*]If Request("Acao""Excluir" And Request("Nome"File.Name Then

 

[*]Response.Write " <tr>"

 

[*]Response.Write " <td>" & File.Name & " - Arquivo Excluido!</td>"

 

[*]Response.Write " <td> - </td>"

 

[*]Response.Write " <td align=right> - </td>"

 

[*]Response.Write " <td> - </td>"

 

[*]Response.Write " </tr>"

 

[*]ObjFS.DeleteFile(Server.MapPath("files/" & File.Name & "))

 

[*]Else

 

[*]Response.Write " <tr>"

 

[*]Response.Write " <td><a href=files/" & File.Name & ">" & File.Name & "</a> | <a href=?acao=Excluir&Nome=" & File.Name & ">Excluir></a></td>"

 

[*]Response.Write " <td>" & File.Type & "</td>"

 

[*]Response.Write " <td align=right>" & File.Size & "  </td>"

 

[*]Response.Write " <td>" & File.DateLastModified & "</td>"

 

[*]Response.Write " </tr>"

 

[*]End If

 

[*]Next

 

e mesmo assim nada..

 

POR FAVOR.. ME AJUDEM!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Houve algum erro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Assim abriu a página, mas dá erro depois q clica em excluir:

 

ASP

[*]For Each File in objFolder.files

 

[*]If Request("Acao""Excluir" And Request("Nome"File.Name Then

 

[*]Response.Write " <tr>"

 

[*]Response.Write " <td>" & File.Name & " - Arquivo Excluido!</td>"

 

[*]Response.Write " <td> - </td>"

 

[*]Response.Write " <td align=right> - </td>"

 

[*]Response.Write " <td> - </td>"

 

[*]Response.Write " </tr>"

 

[*]ObjFS.DeleteFile(Server.MapPath(files/" & File.Name & "))

 

[*]Else

 

[*]Response.Write " <tr>"

 

[*]Response.Write " <td><a href=files/" & File.Name & ">" & File.Name & "</a> | <a href=?Acao=Excluir&Nome=" & File.Name & ">Excluir</a></td>"

 

[*]Response.Write " <td>" & File.Type & "</td>"

 

[*]Response.Write " <td align=right>" & File.Size & "  </td>"

 

[*]Response.Write " <td>" & File.DateLastModified & "</td>"

 

[*]Response.Write " </tr>"

 

[*]End If

 

[*]Next

 

Era só um " a mais, me ajuda ai Salgado, tá quase, deu erro depois q cliquei em excluir...

Compartilhar este post


Link para o post
Compartilhar em outros sites

ASP
  1. For Each File in objFolder.files
     
  2. If Request("Acao""Excluir" And Request("Nome"File.Name Then
     
  3. Response.Write " <tr>"
     
  4. Response.Write " <td>" & File.Name & " - Arquivo Excluido!</td>"
     
  5. Response.Write " <td> - </td>"
     
  6. Response.Write " <td align=right> - </td>"
     
  7. Response.Write " <td> - </td>"
     
  8. Response.Write " </tr>"
     
  9. ObjFS.DeleteFile(Server.MapPath(files/" & File.Name & "))
     
  10. Else
     
  11. Response.Write " <tr>"
     
  12. Response.Write " <td><a href=""files/" & File.Name & """>" & File.Name & "</a> | <a href=""?Acao=Excluir&Nome=" & File.Name & """>Excluir</a></td>"
     
  13. Response.Write " <td>" & File.Type & "</td>"
     
  14. Response.Write " <td align=right>" & File.Size & "  </td>"
     
  15. Response.Write " <td>" & File.DateLastModified & "</td>"
     
  16. Response.Write " </tr>"
     
  17. End If
     
  18. Next

Fiz uma pequena alteraçãozinha, coisa de aspas mesmo, diga qual o erro que deu que assim posso "atacar" o local certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

deu esse erro:

 

Microsoft VBScript runtime error '800a000d'

Type mismatch: '[string: " & File.Name & "]'

/eduteste/mostra3.asp, line 38

 

Linha 38:

ASP

[*]ObjFS.DeleteFile(Server.MapPath(files/" & File.Name & "))

Compartilhar este post


Link para o post
Compartilhar em outros sites

Troca essa:

ASP
  1. ObjFS.DeleteFile(Server.MapPath(files/" & File.Name & "))

Por:
ASP
  1. ObjFS.DeleteFile(Server.MapPath("files/" & File.Name ))

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza :joia:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.