回 帖 发 新 帖 刷新版面

主题:请问如何将复选框选中的值查入到数据库中去啊 ???

我写了一下代码如下:
<FORM action="insert.jsp" method=get name=form>
<P>您的职业是:</P>
<P>
<!--供选取职业类型的检查框-->
<INPUT type="checkbox" name=box value="student">student
<INPUT type="checkbox" name=box value="teacher">teacher
<INPUT type="checkbox" name=box value="computer">computer
<INPUT type="checkbox" name=box value="doctor">doctor
<INPUT type="checkbox" name=box value="telcet">telcet
</P>
<INPUT type="submit" value="送出" name=submit>
<INPUT type="reset" value="清除" name=reset>

insert.jsp

String box[] = request.getParameterValues("box");

//利用java.lang.reflect套件Array对象的getLength方法取得矩阵长度
int len = java.lang.reflect.Array.getLength(box);


    String strSQL="";
     try
    {
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");    //载入驱动程式类别
     Connection con = DriverManager.getConnection("jdbc:odbc:test4");    //建立资料库连线
    //建立Statement变量, 并设定记录指标类型为可前後移动
     Statement stmt = con.createStatement();
     rs=stmt.executeQuery("SELECT * FROM admin");
                 //将游标移动到最后一行:
                 rs.last();
                 //获取最后一行的行号:
                int number=rs.getRow();
                 rs.beforeFirst();
   //利用for循环输出群组检查框输出的值
   if(len<number)
   {
     for(;len<number;len++)
      {
       String del="delete from admin where id= "+(len+1)+"";
        stmt.executeUpdate(del);
      }
  }
  int i=0;

    while(box[i]!="")
    {
        if(i<number)
       {          strSQL="update admin set username='"+box[i]+"' where id"+"="+(i+1)+"";            }
         else
            {          strSQL="insert into admin  (username) values ('"+box[i]+"')";     }
            

        stmt.executeUpdate(strSQL);
         i++;
     }

}
    catch(Exception ex)
    {
        System.out.println(ex.toString());
    }

    
        
  %>
<center><font color="#0000CC">你已经成功插入<a href="show.jsp">查看你插入的信息</a></font></center>

我运行表单可以看到”你已经成功插入查看你插入的信息“
但是数据里没有刚才在复选框里选中的数据

回复列表 (共1个回复)

沙发

问题已经解决 结贴!!!

我来回复

您尚未登录,请登录后再回复。点此登录或注册