博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php复选框、多选框提交数据处理办法
阅读量:5731 次
发布时间:2019-06-18

本文共 884 字,大约阅读时间需要 2 分钟。

  hot3.png

在PHP开发中,表单提交应该非常常用,在所有表单数据中,对于初学者,比较难的恐怕就是复选和多选这种提交数组的处理和上传处理,今天不说上传,就说说处理复选和多选下拉列表。一个复选和多选表单如下

142456_QhOH_1182885.png

这里[]是php特有的,其他如.net、java是没有的,php如果不加的话是接收不到这些数据的。接收数据$arrc = $_POST['c'];$arrlist = $_POST['list'];这里收到的都是数组,一般不直接存入数据库,而是转换成字符串存入,就像 1,2,3这种形式,对于非数字字符串,存储数据库以后要想显示比较方便,直接读取显示,而对于数字字符串,我们一般有可能用这些数字所代表的id去数据库中充当条件,查询数据,所以使用的时候还要把这些字符串还原成数组,然后通过循环来查询显示。

对于的例子,网上有很多,这里为大家推荐几篇:
1,php接收多个复选框的值  
2,探讨php接收多个复选框的值 
数组与字符串转换的函数主要就是implode用来转换成,explode用来还原成数组,如果只是存入数据库,serialize函数更好,用来数据序列化存入数据库,取出我们用unserialize来还原成数组,非常方便,这就是两种用来常用处理数组存储到数据库,有没有更好的我不知道,我在开发中就是主要用的这两种。
本文主要针对于初学者,一般我们对于图片处理都是只存储地址,对于文件上传也都是存储地址,以及时间存储是存储时间戳,在入库出库前对数据检测。

 

解决办法汇总:

in_array判断、循环

假设有一个问题" 您的爱好 ",多选,选择了篮球,足球,台球三项,那么数据库里可能对应一个叫做hobby的字段,这个字段的值就是这三个答案,这三个答案依照规定的链接符链接,比如" 篮球|足球|台球 ".

那么在读取的时候,首先使用explode将答案拆解成一个数组,循环数组,一项一项对比答案,两个值一样了,说明这个答案就被选择了,给这个答案赋值html属性checked,就可以了

 

转载于:https://my.oschina.net/yjft/blog/735102

你可能感兴趣的文章
service mysqld start
查看>>
linux时间
查看>>
Spring+Mybatis项目中通过继承AbstractRoutingDataSource实现数据库热切换
查看>>
让Alert弹窗只弹出一次
查看>>
用友软件操作流程(新建年度帐、年度结转步骤)
查看>>
vsftpd 服务器报错:500 OOPS: vsftpd: refusing to run with writable root inside chroot()
查看>>
mysql权限管理
查看>>
我的友情链接
查看>>
Exchange一些不常用到的功能
查看>>
让你快速上手的Glide4.x教程
查看>>
浮动和清除(闭合)浮动
查看>>
微信小程序注册流程
查看>>
LR录制脚本时IE打不开的原因
查看>>
类的基础
查看>>
微博自动化测试
查看>>
Sublime Text 2.0.2,Build 2221注册码
查看>>
js scroll事件
查看>>
day08 文件操作
查看>>
最长递增子序列 动态规划
查看>>
「小程序JAVA实战」微信小程序工程结构了解(五)
查看>>