我想做选课系统,外观如下: 学期         课程名称    程类别  学分   成绩  绩点  备注  重修    选课与否
2003-2004(上)   统计学    必修课    3     98    4                checkbox (0/1)
......        ......     .....   ...... ...... ...... ......     checkbox (0/1)
......                                                           checkbox (0/1)
.....                                                            checkbox (0/1)
.....                                                            ..........      
因为课程名称是从数据库里面一张schedule表里面调出来的,课程数量根据表的情况有多有少,开始是不知道的,所以checkbox的value值的数量和名称定义都是动态,所以不能用checkbox value=1,2,3,4这样一开始就设定好,那应该怎么设定呢? 郁闷 查不到相关的东西啊~然后我想记录到数据库SC表--select course的课程信息,形式如:学生编号----课程编号  一个表,两个属性,两个属性整体作为主键。能不能提供一些根据checkbox选择信息来记录到数据库的思路和例子呢?我才啃JSP的 搞不定啊,已经在努力学习了,在这里虚心求教了,大家! 

解决方案 »

  1.   

    上面的外观变了,现在重写一下,因为第一次提问不会用这个系统,见谅啊各位~
    我想做选课系统,外观如下: 学期         课程名称    程类别  学分   成绩  绩点   选课与否
    2003-2004(上)   统计学    必修课    3     98    4    checkbox (0/1)
    ......        ......     .....   ...... ...... ......checkbox (0/1)
    ......                                               checkbox (0/1)
    .....                                                checkbox (0/1)
    .....                                                ..........      
    因为课程名称是从数据库里面一张schedule表里面调出来的,课程数量根据表的情况有多有少,开始是不知道的,所以checkbox的value值的数量和名称定义都是动态,所以不能用checkbox value=1,2,3,4这样一开始就设定好,那应该怎么设定呢? 郁闷 查不到相关的东西啊~然后我想记录到数据库SC表--select course的课程信息,形式如:学生编号----课程编号  一个表,两个属性,两个属性整体作为主键。能不能提供一些根据checkbox选择信息来记录到数据库的思路和例子呢?我才啃JSP的 搞不定啊,已经在努力学习了,在这里虚心求教了,大家! 
      

  2.   

    <input type="checkbox" name="scheduleID" value="1">
    <input type="checkbox" name="scheduleID" value="2">
    <input type="checkbox" name="scheduleID" value="3">
    <input type="checkbox" name="scheduleID" value="4">
    <input type="checkbox" name="scheduleID" value="5">然后在JSP中循环读取scheduleID
      

  3.   

    请问 那是不是就要变成从schedule表里面一次只能读出5条记录,然后让用户选课提交,“一个学号对应一个课程号”记录到数据库里面,再读出schedule的下5条显示,用户提交啊?? 
    不然如果一次全部读出schedule的内容就会是:课程1 .........checkbox(value="1")
    ......            ...............
    课程6 .........checkbox(value="1")那怎么区分不同课程被选定好录入数据库呢?
    能不能讲解一下呢?? 我真是没有头绪了
      

  4.   

    首先这些 checkbox 必须具有相同的 property,然后用 value 对他们加以区别,
    <html:checkbox  property="name"  value="张三"  checked="checked">张三</html:checkbox>
    <html:checkbox  property="name"  value="李四"  checked="checked">李四</html:checkbox>
    <html:checkbox  property="name"  value="王五"  >                      </html:checkbox>这里有三个选项,只有 张三、李四被选中。在你的应用中,你可以定义一个数组,
    String[] names=request.getParameterValues("name");这个时候 names 就自动只取了选中的项,
    int sum=names.length;     //这里i等于2然后就可以利用 for 循环对提交的信息进行处理了!
    for( int i = 0; i < sum ; i ++){       out.println(names[i].value);    //实际的业务}
      

  5.   

    value一般都是从数据库里读出来的吧,不过这也很简单的
      

  6.   

    非常感谢zeq258(近朱者赤),其实看书的时候也看了Request对象的这个getParameterValues("name")功能,不过没想到也可以用在checkbox上面,谢谢谢谢,你的解答很清楚,一看就懂,
    把out.println(names[i].value);这句改成out.println(names[i]; 就能运行了,CSDN这里讨
    论学习的氛围太好啦,也谢谢其他回帖的热心人,哈哈,我喜欢这里。