复选框怎么保存到数据库和从数据库中读出来?

复选框怎么保存到数据库和从数据库中读出来?用php和mysql。

<label class="checkbox-inline">
  <input type="checkbox" id="inlineCheckbox1" value="option1"> 1
</label>
<label class="checkbox-inline">
  <input type="checkbox" id="inlineCheckbox2" value="option2"> 2
</label>
<label class="checkbox-inline">
  <input type="checkbox" id="inlineCheckbox3" value="option3"> 3
</label>
阅读 7.5k
3 个回答

方法1,用Form表单
使用相同的name 后面跟中括号,例如 inlineCheckbox[]
后端获取inlineCheckbox 为数组
方法2,自定义post请求
用jQuery,获取所有value,组装成一个值,post后端,自己解析

不太清楚楼主想表达的,先按照自己理解回答吧.
假设有一个问题" 您的爱好 ",多选,选择了篮球,足球,台球三项,那么数据库里可能对应一个叫做hobby的字段,这个字段的值就是这三个答案,这三个答案依照规定的链接符链接,比如" 篮球|足球|台球 ".
那么在读取的时候,首先使用explode将答案拆解成一个数组,循环数组,一项一项对比答案,两个值一样了,说明这个答案就被选择了,给这个答案赋值html属性checked,就可以了.

一个比较原始简单粗暴的多选问题就解决了.

  • 在一个column存多个值(json字符串或者你再发明个编码). 注意这个是违反1NF的, 不过坏处有限.

  • 另开个表, 用外键

  • 开多个column, 各存一个值

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏