雅安论坛

标题: php 复选框修改从数据库返回选中状态实现(亲测) [打印本页]

作者: 未命名    时间: 2019-10-14 17:51
标题: php 复选框修改从数据库返回选中状态实现(亲测)
最近一个学生问了一个关于php复选框在提交后,修改展示数据选中状态的问题,这边和大家说下方法,亲测有效,同学告诉我网上找了很多不能用,我这里说下,这个方法比较简单我们这要从我们复选框提交到数据库的知识,复选框我们使用的是数组来提交,参考点代码如下:
  1. 本人申明无心脏病、糖尿病等疾病、无眼部外伤眼底出血。</br></br>
  2. <td>备注</td>   
  3. <td>精准检测<input type="checkbox" name="beizhu[]" value="精准检测" ></td>   
  4. <td>经络疏通<input type="checkbox" name="beizhu[]" value="经络疏通" ></td>   
  5. <td>肝肾排毒<input type="checkbox" name="beizhu[]" value="肝肾排毒"></td>   
  6. <td>取穴给药<input type="checkbox" name="beizhu[]" value="取穴给药"></td>   
  7. <td>科学练眼<input type="checkbox" name="beizhu[]" value="科学练眼"></td>   
  8. <td>营养调理<input type="checkbox" name="beizhu[]" value="营养调理"></td>   
  9. </br></br>
复制代码
在变量接收的地方我们需要把数据转换成字符串处理,
  1. $beizhu = $_POST['beizhu'];
  2. $beizhu=implode(',',$beizhu); //将数组转换为字符串
复制代码
这是提交,在修改的时候并且选中复选框的内容我们需要注意两个地方,一个是将字符串转化为数组explode(),一个是使用in_array()
我们可以这样
  1. $fenjie = explode(',', $row['beizhu']); // 分解为数组
复制代码
然后在html页面中使用
  1. <td>肝肾排毒<input type="checkbox" name="beizhu[]" value="肝肾排毒" <?php if(in_array("肝肾排毒", $fenjie)){
  2. echo "checked=checked";} ?> /></td>
复制代码
$fenjie  这篇文章是提示性的,如果看不明白的,可以跟帖留言,谢谢大家了





欢迎光临 雅安论坛 (https://www.yaanbbs.net/) Powered by Discuz! X3.4