Enviar imagem e cadastrar na base de dados

5 respostas
R

não estou conseguindo fazer um sistema..q envie uma imagem na pasta q eu quero...e cadastre no banco..

preciso que...
ao cadastrar um socio..crie automaticamente uma subpasta da pasta imagens com o nome do socio cadastrado, até ai eu consegui...
porém...o que eu não estou conseguindo é enviar a imagem para está subpasta...pois ele não está conseguindo pegar o valor do nome do socio numa 3a página..queria que alguém tivesse alguma solução meio pronta..pq..infelizmente..meu tempo ta esgotando..pra entregar a página..e so falta isso...

<% 
ServletContext ctx = getServletContext();
String path = ctx.getRealPath( "/" );

// String site="seu_dominio"; 
String caminhoTemp=path; 
String pasta=path; 

if (FileUpload.isMultipartContent(request)){ 
DiskFileUpload upload = new DiskFileUpload(); 
upload.setRepositoryPath(caminhoTemp); 

try{ 

List items = upload.parseRequest(request); 
Iterator iter = items.iterator(); 
while (iter.hasNext()) { 
FileItem item = (FileItem) iter.next(); 
if (!item.isFormField()) { 

String nomearq=item.getName().toString(); 
String nomeArquivo=nomearq.substring(nomearq.lastIndexOf("\\")+1); 
//con.setfoto("aa");
//con.inserirDados();
out.write("nome do arquivo: " + nomeArquivo + "<br>"); 
out.write("Arquivo(s)<b> " +item.getName() +"</b> transferido(s)<br>"); 

out.write("aeeea " + request.getParameter("aField"));

File arquivo=new File(pasta+"images",nomeArquivo); 
item.write(arquivo); 
out.write("Clique <a href=/images/"+nomeArquivo +">Aqui</a>. Para ver o resultado do upload"); 
} 
} 
}catch(FileUploadException e){ 
out.write("Não foi possível efetivar o upload do arquivo - segue a causa do erro" + "<br>" + e.getMessage()); 
e.printStackTrace(); 
} 
} 
 
%>

valeu ai..to meio desesperado...pq realmente..estou precisando..
:(

5 Respostas

zirocool

Olha aih nas minhas msgs postadas que eu coloquei um exemplo funcional do que tu quer.
É só tu fazer uns ajustes.

Ironlynx

Ah, o tópico do zerocool:
http://www.guj.com.br/posts/list/37408.java

E se precisar exibir essa imagem tem esse aqui tb:
http://www.guj.com.br/posts/list/36773.java

OBS.: zero, tava inspirado nesse post hein? :shock:
Poderia ter montado um tuto para nós! :wink:

R

estes dois exemplos tratam de campos blob…
eu to enviando a imagem…e colocando o caminho somente…
:confused:

R
vou tentar explicar melhor... o codigo abaixo...deveira enviar o valor 'teste' para a proxima pagina...
<form action="salvarArquivo.jsp" method="post" enctype="multipart/form-data">
<p>Selecione o arquivo <input type="file" name="file1">
<input type="submit" value="Upload" /></p>
<input type="hidden" name="campo" id= "campo" value="teste" >
</form>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page import="org.apache.commons.fileupload.*" %>

<%
String x = request.getParameter("campo");
out.println(x);

try {

ServletContext ctx = getServletContext();
String path = ctx.getRealPath( "/" );

DiskFileUpload fu = new DiskFileUpload();

List fileItems = fu.parseRequest(request);

Iterator i = fileItems.iterator();

FileItem fi = (FileItem)i.next();

InputStream in = fi.getInputStream();
String nome = fi.getName().toString();
String arquivo = nome.substring(nome.lastIndexOf("\\")+1);
File file = new File(path,arquivo);

FileOutputStream fos = new FileOutputStream(file);

int c;
while((c = in.read()) != -1)
fos.write(c);

fos.close();
out.println("arquivo salvo: c:/arquivoSaida");
}
catch(Exception e) {
out.println(e.toString());
}
%>

porém ao invés de aparacer o valor teste..aparece null..

alguém pode ajudar"??
agradeco..

R

descobri que o erro está em
enctype=“multipart/form-data”

:confused:

Criado 13 de agosto de 2006
Ultima resposta 14 de ago. de 2006
Respostas 5
Participantes 3