日期:2014-05-18  浏览次数:20670 次

关于form的enctype="multipart/form-data"
我有一个表单  
里面既要提交一些文本信息  
又要提交图片~~  
但是表单里设置了enctype= "multipart/form-data "  
那么文本信息就传递不过去  
如果不要   enctype= "multipart/form-data "  
上传的文件又不行  

通常怎么解决这个问题啊


------解决方案--------------------
DiskFileUpload upload = new DiskFileUpload();
upload.setSizeMax(size);
try{
items = upload.parseRequest(request);
}catch(Exception _ex){
error = "附件太大! ";
request.setAttribute( "error ", error);
return mapping.findForward( "failure ");
}
Iterator iter = items.iterator();
while (iter.hasNext()) {
FileItem item = (FileItem) iter.next();
if (item.isFormField()) { //如果是普通表单
if(item.getFieldName().equals( "board_id ")) {
board_id = item.getString();
}else if(item.getFieldName().equals( "TZNR ")) {
article_content=item.getString();
}else if(item.getFieldName().equals( "artice_title ")) {
artice_title=item.getString();
}else if(item.getFieldName().equals( "article_id ")){
re_artice_id=item.getString();
//System.out.println( "re_artice_id= "+re_artice_id);
}
} else { //如果是文件域表单
is=item.getInputStream();//获得上传文件的输入流
size=item.getSize();//文件大小
filename=item.getName();
if(!filename.equals( " ")){
filename=filename.substring(filename.lastIndexOf( "\\ ")+1);
filename_exec = filename.substring(filename.lastIndexOf( ". ")+1);
}
}
}
------解决方案--------------------
用 String cplb=mySmartUpload.getRequest().getParameter( "cplb ");代替原来的String cplb=request.getParameter( "cplb ");就OK了,简单吧!o(∩_∩)o...

我是在JSP和martUpload平台下做的 看看行不行