String   name=req.getParameter( "name "); 
----------------------------------------------
问题出在这里改为
smartupload.getRequest().getParameter("name");

解决方案 »

  1.   

    在文件上传页面,不能用普通的request来获取参数,得用jspsmartupload提供的request对象来获取,代码如楼上
      

  2.   

    String   name=req.getParameter( "name "); smartupload.getRequest().getParameter( "name "); 因为你是enctype= "multipart/form-data " >
      

  3.   


    表单中enctype= "multipart/form-data "的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;只有使用了multipart/form-data,才能完整的传递文件数据,进行下面的操作. 
    enctype= "multipart/form-data "是上传二进制数据;   form里面的input的值以2进制的方式传过去。 
    form里面的input的值以2进制的方式传过去,所以request就得不到值了。   也就是说加了这段代码,用request就会传递不成功,取表单值加入数据库时,用到下面的: SmartUpload   su   =   new   SmartUpload();//新建一个SmartUpload对象 su.getRequest().getParameterValues();取数组值 su.getRequest().getParameter(   );取单个参数单个值
      

  4.   

    xiyuan1999解释的很详细.我开始用jspsmartupload也试过这个问题.后来也是对 enctype 编码方式进行研究后才搞清楚.问题关键就是使用 enctype=   "multipart/form-data" 编码方式改变,必须使用:
     su.getRequest().getParameterValues();才能正常解码.