O que é AspSmartUpload ?

Com esse poderoso componente os visitantes de seu site poderão enviar imagens, textos e tudo mais o que você desejar.

É possível criar uma infinidade de aplicações, conforme sua necessidade e imaginação. Saiba como usá-lo:

formexemplo1.htm

<html>
<body>
<form method="post" action="exemplo1.asp" enctype="multipart/form-data">
Arquivo: <input type="file" name="arquivo">
<input type="submit" value="Enviar">
</form>
</body>
</html>

exemplo1.asp

<html>
<body>
<%
Set objUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
objUpload.Upload
objUpload.Save(Server.MapPath("./"))
Response.Write "Arquivo enviado com sucesso!"
%>
</body>
</html>

A seguir veja a função de cada um dos comandos utilizados:

enctype=”multipart/form-data: “Esse método de codificação deve ser usado no envio de arquivos. Sem ele, o upload não funciona.

Set objUpload = Server.CreateObject(“aspSmartUpload.SmartUpload”): Cria uma instância do componente aspSmartUpload com o nome objUpload.

objUpload.Upload: Entra no modo Upload.

objUpload.Save(Server.MapPath(“./”)): Salva todos os arquivos enviados para a pasta indicada: nesse caso é a pasta onde o script está armazenado (Server.MapPath(“./”)).

Incrementando o código

formexemplo2.htm

<html>
<body>
<form method="post" action="exemplo2.asp" enctype="multipart/form-data">
Arquivo1: <input type="file" name="arquivo1"><br>
Arquivo2: <input type="file" name="arquivo2"><br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

exemplo2.asp

<html>
<body>
<%
Set objUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
objUpload.Upload
For Each File In objUpload.Files
If Not File.IsMissing Then
File.SaveAs(Server.MapPath("./") & File.FileName)
Response.Write("Arquivo <b>" & File.FileName & "</b> ")
Response.Write("(" & File.Size & "Bytes) enviado com sucesso!<br>")
End If
Next
%>
</body>
</html>

A partir do código anterior você pode extrair diversas informações do arquivo, tais como o nome e o tamanho. A principal diferença é que os arquivos são processados individualmente. Confira a seguir a descrição de cada instrução usada para esse recurso:

For Each File In objUpload.Files: Processa os arquivos individualmente

If Not File.IsMissing Then: Verifica se o usuário selecionou o arquivou ou não.

File.SaveAs(Server.MapPath(“./”) & File.FileName): Salva o arquivo no diretório onde este script se encontra com o seu nome original (File.FileName)

No exemplo2.asp os arquivos foram salvos a cada looping da função For Each embora eles também poderiam ser salvos de uma só vez usando o método objUpload.Save.

Veja nos códigos exemplo2save.asp e formexemplo2save.htm que estão contidos neste arquivo, contendo todos os exemplo abordados neste TM.

Se o formulário enviar apenas um arquivo, também é possível exibir as informações como o método Files.Item(X), onde X é o número do arquivo. Neste caso, como ele é o único arquivo, ele é 1. como Response.Write objUpload.Files.Item(1).FileName, por exemplo.

Restrições

Ao permitir que os usuários enviem arquivos ao seu servidor, você deve estar atento ao risco que eles podem apresentar: arquivos .exe podem chegar com vírus e infectar o computador de todos os usuários que dizerem o download. O componente aspSmartUpload resolve esse problema também: nele é possível definir quais os tipos de arquivos que são ou não permitidos sendo que você também pode estabelecer o tamanho máximo que os arquivos enviados podem ter. Parar usar esses recursos, as funções são:

TotalMaxFileSize: Tamanho máximo, em bytes, permitido por envio.

MaxFileSize: Tamanho máximo permitido de cada arquivo enviado.

AllowedFileList: Lista das extensões permitidas.

DeniedFilesList: Lista das extensões não autorizadas.

DenyPhysicalPath: Não permite o acesso a um endereço físico do servidor (por exemplo, C:\Arquivos). Somente aceita caminhos virtuais que ficam localizados dentro da sua pasta Web (por exemplo, /upload).

formexemplo3.htm

<html>
<body>
<form method="post" action="exemplo3.asp" enctype="multipart/form-data">
Arquivo: <input type="file" name="arquivo"><br>
<sup>Somente com a extensão .txt ou .doc e menores que 30KBytes.</sup><br>
<input type="submit" value="Enviar">
</form>
</body>
</html>

exemplo3.asp

<html>
<body>
<%
Set objUpload = Server.CreateObject("aspSmartUpload.SmartUpload")
objUpload.MaxFileSize = 30000
objUpload.AllowedFilesList = "txt,doc"
objUpload.DenyPhysicalPath = True
objUpload.Upload
objUpload.Save(".")
Response.Write("Arquivo enviado com sucesso!")
%>
</body>
</html>

IMPORTANTE: A INETWEB não é desenvolvedora deste componente, ficando à nossa responsabilidade somente o suporte na utilização do mesmo. Para maiores informações sobre funcionalidades, recursos, sugestões e reclamações, recomendamos que procure o desenvolvedor responsável do componente.

Essa Base de conhecimento é útil? Útil Não Útil 1 de 2 pessoas disseram que esse artigo foi útil.