Ir ao conteúdo
  • Cadastre-se

[VB.NET] File Uploader com Filtro, Sobrescrever...


HiperTecnologia

Posts recomendados

Boa tarde galera, tudo certo? ;)

É o seguinte, sou meio que iniciante em VB.NET mas estou me esforçando, rsrsrs

Estou fazendo um sistema de Ordens de Serviço Online que está ficando muito bacana, com estatística e tudo mais, mas preciso de um "Uploader" para que o usuário ao cadastrar uma Ordem de Serviço possa enviar imagens com extensões (.JPEG, .JPG, .PNG, .GIF) com tamanho máximo de 500 KB e arquivos com extensão (.W, .I, .XLS, .XLSX, .DOC, .DOCX, .TXT) com tamanho máximo de 5 MB.

E gerar abaixo uma lista dos arquivos anexados permitindo excluir algum arquivo (igual do anexar do GMAIL, sabe?).

Bom seria também se tivesse uma barra de progresso (progress bar) ou uma porcentagem que mostrasse ao usuário se travou ou algo do tipo.

Bom seria também verificar se o arquivo existe antes de realizar o upload.

Resumindo:

1. Seleção de arquivos de imagens com extensão (.JPEG, .JPG, .PNG, .GIF);

2. Seleção de arquivos com extensão (.W, .I, .XLS, .XLSX, .DOC, .DOCX, .TXT);

3. Imagens com tamanho máximo de 500KB;

4. Arquivos com tamanho máximo de 5 MB;

5. Verificação se existe o arquivo antes do upload;

6. Renomear o arquivo ao salvar;

7. Barra de Progresso ou porcentagem em texto.

8. Precisa ser em VB.NET ou em algum formato (Flash, Silverlight...) que dê para incorporar na página em vb.net.

Imagem básica do que eu queria mais ou menos:

ss001.png

Eu publicarei o código se alguém quiser um sistema de Ordens de serviço aqui quando terminar...

Espero que possam me ajudar

valeu

Achei esse bem bacana, muito dífícil de fazer?

http://codecanyon.net/item/ajax-multi-upload/full_screen_preview/112532

Tem esse outro free aqui, alguém me ajuda a implementar numa página vb.net?

http://www.plupload.com/example_queuewidget.php

Falou

Link para o comentário
Compartilhar em outros sites

Cara....eu tenho aqui o codigo de utilização do uploader e um outro pedaço de codigo que lista esses arquivos que foram enviados pra uma determinada pasta, porém ainda nao descobri como criar um link dinamico desses arquivos e listar em um gridview.

Se te servir pra alguma coisa eu te passo.você ta usando o que?C#?

Link para o comentário
Compartilhar em outros sites

Ufa, uma luz no fim do túnel.

Cara, com certeza eu quero, já é alguma coisa pra usar como ponto de partida e eu te ajudo depois a fazer esses links dinâmicos.

Estou usando VB.NET mas se você só tiver C# vou tentar fazer a conversão e você me ajuda a converter porque tem vez que é uma dureza.

Se quiser aplicar algum estilo para as caixas e botões é fácil? você manja disso também?

valeu pela força

Cara....eu tenho aqui o codigo de utilização do uploader e um outro pedaço de codigo que lista esses arquivos que foram enviados pra uma determinada pasta, porém ainda nao descobri como criar um link dinamico desses arquivos e listar em um gridview.

Se te servir pra alguma coisa eu te passo.você ta usando o que?C#?

Link para o comentário
Compartilhar em outros sites

Então cara...aqui no caso eu to usando o componente fileuploud e inseri mais um componente botao no formulario.

Dentro desse botao eu coloquei o seguinte codigo:

OBS:AS LINHAS ESTÃO COMENTADAS.

protected void Button1_Click(object sender, EventArgs e)

{

try

{

if (FileUpload1.HasFile)

{

// BLOQUEIA A TRANSFERÊNCIA DE ARQUIVOS MAIOR QUE 1MB

if (FileUpload1.PostedFile.ContentLength < 1048576)

{

Boolean fileOK = false;

//String path = Server.MapPath("~/UploadedImages/");

if (FileUpload1.HasFile)

{

String fileExtension = System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();

String[] allowedExtensions = { ".gif", ".png", ".jpeg", ".jpg" };

for (int i = 0; i < allowedExtensions.Length; i++)

{

if (fileExtension == allowedExtensions)

{

fileOK = true;

}

}

}

if (fileOK)

{

try

{

FileUpload1.SaveAs(@"d:\" + FileUpload1.FileName);

}

catch (Exception ex)

{

// MENSAGEM INFORMATIVA PARA O USUÁRIO

Page.ClientScript.RegisterStartupScript(this.GetType(), "init", "<script>alert('" + ex.Message + ".');</script>");

}

}

else

{

// MENSAGEM INFORMATIVA PARA O USUÁRIO

string msg = "Só poderá carregar imagens neste campo.";

Page.ClientScript.RegisterStartupScript(this.GetType(), "init", "<script>alert('" + msg + ".');</script>");

}

}

else

{

// MENSAGEM INFORMATIVA PARA O USUÁRIO

string msg = "Limite máximo para a imagem é de 1MB.";

Page.ClientScript.RegisterStartupScript(this.GetType(), "init", "<script>alert('" + msg + ".');</script>");

}

}

}

catch (Exception ex)

{

throw new Exception(ex.Message);

}

}

Pra retornar os arquivos enviados para a pasta dentro de um gridview eu fiz o seguinte codigo:

OBS:ESSE CODIGO EU COLOQUEI DENTRO DA PAGE LOADO PRA SER CARREGADO AUTOMATICAMENTE.O (@"App_cod")),"*.jpg"); INDICA O CAMAINHO E O TIPO DE ARQUIVO.

protected void Page_Load(object sender, EventArgs e)

{

//mostrar no gridview os arquivos da pasta

ArrayList vetor = new ArrayList();

var arquivos = Directory.GetFiles(Path.GetDirectoryName(Server.MapPath(@"App_cod")), "*");

foreach (String arquivo in arquivos)

{

FileInfo fi = new FileInfo(arquivo);

vetor.Add(fi.Name);

long y = fi.Length;

}

GridView1.DataSource = vetor;

GridView1.DataBind();

}

Espero que te ajude em alguma coisa.Infelizmente a gente não acha muita relaciona a isso na net.Se a gente não compartilhar as duvidas e nos ajuadarmos fica complicado né.Se você souber como crio link's dinamicos de determinados arquivos ou pastas dentro que estejam dentro do projeto eu vou te agradecer pra caramba, porque ja quebrei a cabeça mais não consegui nada.

Ufa, uma luz no fim do túnel.

Cara, com certeza eu quero, já é alguma coisa pra usar como ponto de partida e eu te ajudo depois a fazer esses links dinâmicos.

Estou usando VB.NET mas se você só tiver C# vou tentar fazer a conversão e você me ajuda a converter porque tem vez que é uma dureza.

Se quiser aplicar algum estilo para as caixas e botões é fácil? você manja disso também?

valeu pela força

Quanto a criar estilos,você ta querendo criar os seus proprios botões?é isso?

Se for você vai ter que dar uma procurada em algum tutorial que ensine a criar componentes pro VS.Eu sabia fazer isso em Delphi, mas no VS nunca precisei fazer, então vou ficar te devendo.

Link para o comentário
Compartilhar em outros sites

Arquivado

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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!