复选框在数据库中存储

1,从复选框直接读取选中的值

        String[] ptxtt=request.getParameterValues("ptxt1");
        String ptxt1="";
        if(ptxtt.length>0)
        {
            for(int i=0;i)
            {
                ptxt1=ptxt1+ptxtt[i]+",";  //ptxt1为存入数据库的值
            }
        }

2,每个复选框默认值为2的n次方

例如:

复选框的值:篮球=2 足球=4 羽毛球=8

数据库中存入的值为选中的选项的值的和。
如我选择了篮球、足球,则值的和为:6,然后再次编辑的时候,只要拿6分别和选项做与运算, 结果大于0则说明选择了,等于0则说明未选择。
原理解析:是最常用的与运算,
比如羽毛球, 8 换算为二进制为:1000, 6换算为二进制为:0110 1 0 0 0      
---------- =  0000
 0 1 1 0
而2的二进制为 0010
 0 0 1 0      
---------- =  0010 = 十进制的2 > 0
 0 1 1 0

 

你可能感兴趣的:(复选框在数据库中存储)