Never give up - LEO

人 只有在合适的地方 才能体现出最大的价值
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

求助:数字拆分问题?

Posted on 2007-03-30 15:21  lizhiwen  阅读(588)  评论(3编辑  收藏  举报

 

数据库里有一个整型字段,对应界面的是四个或者更多个checkbox。
现在我要利用这个字段保存这些的checkbox状态,并且可以根据整型字段的值判断出每个checkbox的状态。
比如:有四个checkbox,分别为checkbox1,checkbox2,checkbox3,checkbox4,
当checkbox1和checkbox3 选中时,数据库字段是5(假设),然后通过5可以让前台知道checkbox1和checkbox3是要选中的。
当checkbox1和checkbox2 选中时,数据库字段是4(假设),然后通过4可以让前台知道checkbox1和checkbox2是要选中的。

事先声明,不考虑数据库设计是否合理,反正是不能改了,而且只能是整型;


我目前的思路是通过二进制位移来实现的,详细如下:
checkbox1选中为 1 不选为0
checkbox2选中为 2 不选为0
checkbox3选中为 4 不选为0
checkbox4选中为 8 不选为0
保存时进行相加,选中的才有值,然后存入数据库。

从数据库取出来时,先把数换成二进制,然后通过二进制的0和1状态来判断checkbox是否选中

这个方法我觉得有点恶心,不知道大家有没有更好的方法?