Ir para conteúdo

POWERED BY:

Arquivado

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

Thiago Padilha

Salvar Imagens

Recommended Posts

Olá galera, sou novo aqui no imasters fiz meu registro hoje. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Estou començando a me aventurar em .net. Uso atualmente o Visual Studio .NET 2005 e a linguagem que escolhi para fazer meu primeiro projeto é c#.

 

Bom vamos ao problema: Tenho uma loja com centenas de produtos, quero fazer um site com controle de produtos (especificamente: cadastrar, alterar, excluir). No site ao publico quero que tenha uma tela que liste os produtos que cadastrei com suas caracteristicas, tipo esses de e-comerce.

 

No cadastro, cada produto pode ter 5 fotos. Minha primeira duvida é como armazenar essas fotos? No banco ou diretamente no servidor? Tanto um quanto o outro, como fazer o controle de que a foto pertence ao produto?

 

Quem souber de alguma coisa que possa ajudar, por favor responda.

 

Abraços! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, acho que como em qq linguagem você colocaria as fotos numa pasta virtual e o caminho você armazenaria no DB...Como sao 5 fotos de cada produto...va criando pastas (dinamicamente é claro) no estilo id do produto/fototipo, produto id: 1www.site.com/public/images/1/foto1.jpgwww.site.com/public/images/1/foto2.jpgwww.site.com/public/images/1/foto3.jpgwww.site.com/public/images/1/foto4.jpgwww.site.com/public/images/1/foto5.jpgfica mais organizado e facil pra você mexer depois.e o controle você faria ou pelo id, em uma outra tabela você poderia ir inserindo os valores e os relacionandoid | produto | foto1 1 foto1.jpgé uma idea...é assim que eu faço nos meus sisteminhas pelo menos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pra salvar as fotos, você usa o elemento (X)HTML input file, mas com um atributo à mais. Veja:

 

<input type="file" id="fileFoto1" name="fileFoto1" runat="server" />

 

Esse runat="server" é importantíssimo. Ele vai deixar o elemento criado e instanciado no servidor para que você possa manipulá-lo.

 

Então, quando a página tiver um PostBack, você salva usando o método SaveAs da classe HttpPostedFile. Acompanhe:

 

protected void Page_Load(object sender, EventArgs e) {	if (isPostBack) {		fileFoto1.PostedFile.SaveAs("c:/caminho_raiz_da_aplicacao/produtos/fotos/id_produto/foto1.jpeg");	}}
Isso aí é o básico. Você pode (e deve) colocar controles de tamanho, formato da imagem, tratar a imagem dinamicamente... etc...

 

Espero ter ajudado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como uma boa prática de programação aconselho você a trabalhar assim, caso queira guardar apenas a foto no servidor sem precisar de armazenar nada no banco.1 - Cada projeto você pode criar uma pasta2 - dentro desta pasta você coloca os arquivos de forma sequencial ex: jpg001.jpg, jpg002.jpg, jpg003.jpg, ...Se precisar tenho um script que faz exatamente o upload do arquivo e renomeia de acordo com o tipo do arquivo. Esta dica eu peguei num material da microsoft de técnicas de programação.

Olá galera, sou novo aqui no imasters fiz meu registro hoje. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Estou començando a me aventurar em .net. Uso atualmente o Visual Studio .NET 2005 e a linguagem que escolhi para fazer meu primeiro projeto é c#.Bom vamos ao problema: Tenho uma loja com centenas de produtos, quero fazer um site com controle de produtos (especificamente: cadastrar, alterar, excluir). No site ao publico quero que tenha uma tela que liste os produtos que cadastrei com suas caracteristicas, tipo esses de e-comerce. No cadastro, cada produto pode ter 5 fotos. Minha primeira duvida é como armazenar essas fotos? No banco ou diretamente no servidor? Tanto um quanto o outro, como fazer o controle de que a foto pertence ao produto?Quem souber de alguma coisa que possa ajudar, por favor responda. Abraços! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

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.