AspUpload

Muitos são os componentes ASP disponíveis no mercado, gratuitos ou não, encarregados de administrar a transferência de arquivos por meio de um navegador para o servidor.

Este tipo de componente adiciona outro elemento de interação com o usuário que seria capaz de enviar qualquer tipo de arquivo ao nosso servidor. Este arquivo poderia por sua vez ser aberto e mostrado ao resto dos usuários em tempo real.

Uma aplicação exemplo onde poderíamos usar este tipo de objetos seria um web site de chat onde, cada pessoa que entra, fornece, se o deseja, uma foto sua que será visualizada pelo resto dos interlocutores.

Administrar esta ou qualquer outra aplicação do estilo implica que faremos frente a toda uma série de situações que há que solucionar da maneira mais simples:

  • Não permitir a transferência de arquivos acima de um determinado tamanho
  • Controlar o tipo de extensão dos arquivos que há que atribuir
  • Certificarmos que os arquivos possam ou não ser re-escritos
  • Salvar parâmetros como a largura e altura de uma imagem

Como dissemos, existe uma infinidade de componentes que podem nos ajudar nesta tarefa. Nós comentaremos aqui o que utilizamos em alguma ocasão: AspUpload de Persits Software.

AspUpload permite ao servidor aceitar, salvar e manipular arquivos que tenham sido enviados por um usuário a partir de um clássico formulário em HTML. O conteúdo deste formulário é enviado a um script que invoca a um objeto que é quem realmente se encarrega de realizar todas as funções necessárias para o encontro e o armazenamento dos arquivos.

Entre outras coisas, este objeto nos permite:

  • Limitar o tamanho do arquivo a atribuir.
  • Permitir ou não o sobrescrever um arquivo.
  • Controlar os atributos do arquivo.
  • Mover, copiar, re-nomear e apagar o arquivo recebido.
  • Armazenar os arquivos no banco de dados.
  • Salvar os arquivos em memória, não no disco rígido.
  • Informa-nos sobre as dimensões e tipos de arquivo gráficos atribuídos.

    A diferença de outros componentes análogos, AspUpload não é freeware. A razão pela qual expomos este e não algum outro é simplesmente, como já dissemos, porque se trata do que já utilizamos em alguma ocasião. Pode ser, não obstante, que o servidor que você utilizar já tenha adquirido e que sua utilização não lhe custe nada. Uma pequena consulta ao seu provedor pode resolver esta dúvida. Se este não for o seu caso, e você deseja fazer com um componente parecido, mas gratuito, simplesmente busque em ASP In.

    De qualquer forma, este componente nos pareceu bastante profissional e de um manejo fácil e completo. Altamente recomendável para este tipo de tarefas.

    Ademais, o componente vem documentado de uma forma excelente na página da empresa que o constrói, com exemplos rápidos e práticos para coloca-lo em funcionamento em um momento.

    Exemplo rápido

    Para termos uma idéia básica sobre como se utiliza este componente, vamos realizar um exemplo muito rápido e simples.

    A seguir podemos ver o código que poderíamos utilizar para colocar um formulário em uma página web com o qual poderíamos selecionar algum arquivo para subir ao servidor.

    <HTML>
    <BODY BGCOLOR=”#FFFFFF”>

    <FORM METHOD=”POST” ENCTYPE=”multipart/form-data” ACTION=”carregar.asp”>
    <INPUT TYPE=FILE SIZE=60 NAME=”FILE1″><BR>
    <INPUT TYPE=FILE SIZE=60 NAME=”FILE2″><BR>
    <INPUT TYPE=FILE SIZE=60 NAME=”FILE3″><BR>
    <INPUT TYPE=SUBMIT VALUE=”Upload!”>
    </FORM>

    </BODY>
    </HTML>

    É importante colocar o atributo ENCTYPE=”multipart/form-data” , que indica que se deve enviar o conteúdo do arquivo e não exclusivamente o nome.

    Também podemos ver como seria o script que pega o arquivo e o salva no servidor. O arquivo carregar.asp:<HTML>
    <BODY>

    <%
    Set Upload = Server.CreateObject(“Persits.Upload.1”)
    Count= Upload.Save(“d:xvrtmeudominio.comhtmlupload”)
    %>
    <% = Count %> arquivos subidos.

    </BODY>
    </HTML>

    A única coisa diferente que fazemos é criar o componente no servidor e associa-lo à referência “Upload”, isto é feito com Server.CreateObject. Posteriormente, utilizamos o método save do objeto para salvar o arquivo no servidor.

    Lembramos novamente que na página do componente podemos obter a documentação inteira, que está muito clara e interessante.

Deixe um comentário