Enctype

8 respostas
D

Galera,

Seguinte, tenho um formulário que botei enctype=“multipart/form-data” para poder dar upload em um arquivo, porém no meu formulário há mais dados que necessito, como [nome, login, etc].
Mas com o enctype dessa forma, meu servlet não está conseguindo capturar os campos do formulário normal.

Como resolvo isso?

:?:

8 Respostas

V

Esses dados vem do BD ?

R

também estou com o mesmo problema…
alguém sabe resolver???

E

poderias encaminha o fonte pra dar uma olhada?

E

Encaminha o fonte pra gente da uma olhada pra ver como vc ta definindo as coisas.

nunca tive problemas aqui com isso.

A

Faz assim, o upload do arquivo faz em um form diferente dentro de um popup e coloca o nome do arquivo enviado no campo de seu form inicial. Eu sempre faco assim.

Alberto

E

Estao usando qual biblioteca pra fazer upload?
Qual versao?

Nestor_Penteado_Jr

Eu também estou com o mesmo problema…

Tenho mais dados no formulario e quando dou um post

ele não pega esses dados ! :shock:

Nestor_Penteado_Jr

AQUI ESTA O JSP

<form name=“frm” action=“cadEmpresa” method=“post” enctype=“multipart/form-data”>

<%MontaTabela mt = new MontaTabela();%>

<input type=“hidden” name=“event”>

<input type=“hidden” name=“txtcomplexo”>

<script>

function gravarArquivo(){

if(document.frm.arquivoSelecionado.value==""){

alert(".: Selecione uma Arquivo! :.");

document.frm.arquivoSelecionado.focus();

return false;

}else{

document.frm.event.value = “upload”;

document.frm.submit();

}

}

</Script>

<%

String selecionados;

String tamanhoTotal;

if(request.getAttribute(valor)==null){

selecionados="";

}else{

selecionados = (String)request.getAttribute(valor);

}

if(request.getAttribute(tamanhoTotal)==null){

tamanhoTotal="";

}else{

tamanhoTotal = (String)request.getAttribute(tamanhoTotal);

}

%>

<table class=“ptable_livre”>

<%=mt.getCabecalho(UPLOAD,2)%>

<tr><td colspan=2><hr></td></tr>		

<tr>

<td colspan=2 background=‘Pages/Imagens/fndA04.gif’ align=center>

 :. Selecione o arquivo desejado .: 

</td>

</tr>

<tr>

<td colspan=2 align=center> 

<input type=“file” name=“arquivoSelecionado” size=“80” style=“font-family: Verdana; font-size: 10 px; border: 1 solid #C0C0C0”>

</td>

</tr>

<tr><td colspan=2><hr></td></tr>

<tr>

<td colspan=2 background=‘Pages/Imagens/fndA04.gif’ align=center>

 :. Tamanho Total dos Arquivos Enviados .: 

</td>

</tr>

<tr>

<td colspan=2 align=center>

<input readonly type=“text” name=“tamanhoTotal” value="<%=tamanhoTotal%>" size=“20” style=“background-color:#E0E0E0; font-family: Verdana; font-size: 10 px; border: 1 solid #C0C0C0”>

</td>

</tr>

<tr>

<td colspan=2 background=‘Pages/Imagens/fndA04.gif’ align=center>

 :. Arquivos Gravados no Servidor - Upload Realizado com Sucesso .: 

</td>

</tr>

<tr>

<td colspan=2 align=center>

<textarea readonly rows=“11” name=“selecionados” cols=“85” style=“background-color:#E0E0E0; font-family: Verdana; font-size: 10 px; border-style: solid; border-width: 1”><%=selecionados%></textarea>

</td>

</tr>

<tr><td colspan=2><hr></td></tr>

<tr>

<td class=‘ptdb’ height=‘50’ colspan=“2” align=center background=“Pages/Imagens/bg_table_fundo.GIF”>

<input type=“button” value=" Gravar Arquivo Selecionado " onclick=“gravarArquivo()” style=“font-family: Verdana; font-size: 10 pt; font-weight: bold”>

</td>

</tr>

</table>

</form>

MINHA SERVLET

//=== Metodo doPost ======================================
public void doPost(HttpServletRequest request, HttpServletResponse response){
	
	//=== Carregar ===========================================
	if (event.equalsIgnoreCase("carregar")){
		carregar(request,response);
		
	}
	//=== Carregar pagina ============================================
	else if (event.equalsIgnoreCase("carregarUpload")){
		carregarUpload(request,response);
	}	
	else if (event.equalsIgnoreCase("upload")){ // [color=red]O PROBLEMA ESTA AQUI 
                    POIS ELE NAO TRAZ ESSA INFORMAÇÃO UPLOAD POR CAUSA DO "enctype="multipart/form-data""
		SE EU TIRAR ISSO DO JSP ELE CONSEGUE PEGAR ESSA INFORMAÇÃO[/color]
		upload(request,response);
	}	
}

tks :lol:

Criado 12 de abril de 2006
Ultima resposta 17 de ago. de 2006
Respostas 8
Participantes 6