String name0 =request.getParameter("mode");
    String name1 =request.getParameter("temp_de"); 
    String name2 =request.getParameter("temp_de"); 
    String name3 =request.getParameter("opti1");
    .... 
     
    
    String sql0 = "select * from instrument"; //所用table
            Vector com = new Vector(); 
            if (name0!=null && !name0.equals(" ")) { 
                com.add("mode like '%" + name0 + "%'"); //直接变量要与数据库中字段相同
            } 
            if (name0!=null && !name0.equals(" ")) { 
                com.add("mode like '%" + name0 + "%'"); //直接变量要与数据库中字段相同
            } 
      ....
表单中有的未填充,比如一共7项,只选择其中三项,提交后的页面为白屏。数据库链接和页面显示别的东西没问题,问题就是必须选上所有的选项,要实现不定项选择,该怎么改?请教!

解决方案 »

  1.   

    楼主写的什么代码啊
    String name1 =request.getParameter("temp_de"); 
    String name2 =request.getParameter("temp_de"); 
    name1 和 name2 取同样的值?
    .....提交后的页面为白屏,用什么提交的?form的action是什么,jsp,servle,struts?
      

  2.   

    都是jsp中嵌入java,我基本没用过分层模式。
      

  3.   

    可以改改sql语句。
    String name0 =request.getParameter("mode"); 
    String name1 =request.getParameter("temp_de"); 
    String name2 =request.getParameter("temp_de"); 
    String name3 =request.getParameter("opti1"); 
    String sql0 = “select * from instrument where 1”;String selectName0 = "";
    String selectName1 = "";
    String selectName2 = "";
    String selectName3 = "";if (name0!=null && !name0.equals(" ")) { 
        selectName0 = " and mode like '%" + name0 + "%‘";
    }if (name1!=null && !name1.equals(" ")) { 
        selectName1 = " and mode like '%" + name1 + "%‘";
    }
    ......//以此类推.String SQL = sql0 + selectName0 + selectName1 + selectName2 + selectName3;
    执行SQL就行了。