解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题


Posted in PHP onMay 11, 2017

一 问题

在公司的开发过程中,遇到了一个问题:如何处理 form 表单提交了多个 name 属性值相同的 input 标签?源码如下(源码是在 form 表单之中的):

<!--{loop $address $index $one}-->
<div class="address_item">
   <p>
    <label>
    <input type="hidden" name="express_price" value="{$one['express_price']}" />
    <input type="hidden" name="state_fare" value="{$one['state_fare']}" />
    <input type="hidden" name="id" value="{$one['id']}" />
    <input type="radio" <!--{if $one[ 'default']=='Y' }-->checked<!--{/if}-->name="address" value="{$one['id']}" /><span name="mobile">{$one['mobile']}</span>
    </label>
   </p>
</div>
<!--{/loop}-->

二 解决方法

在上述源码中,通过 loop 循环,在 form 表单中生成了多个name属性值相同的 input 元素,当点击提交时,后台的 php 文件使用 $_POST 仅能获取到一个 div 元素中的 input元素传过来的值,但是,radio 类型的 input 元素传过来的值一定是被选中的那一个。据此,修改上述源码中一些 input 元素的相同 name 属性值为数组,再在后台 php 文件通过被选中的 radio 类型的 input 元素的 name 属性值,确定所传过来的整个 div 元素。修改后的代码如下:

<!--{loop $address $index $one}-->
<div class="address_item">
   <p>
    <label>
    <input type="hidden" name="express_price[]" value="{$one['express_price']}" />
    <input type="hidden" name="state_fare[]" value="{$one['state_fare']}" />
    <input type="hidden" name="id[]" value="{$one['id']}" />
    <input type="radio" <!--{if $one[ 'default']=='Y' }-->checked<!--{/if}-->name="address" value="{$one['id']}" />
    <span name="mobile">{$one['mobile']}</span>
    </label>
   </p>
</div>
<!--{/loop}-->

php 文件:

$key = 0;
$address_id = intval($_POST["address"]);
foreach ($_POST['id'] as $k => $v) {
  if ($v == $address_id)
     $key = $k;
}
$_POST['express_money'] = $_POST['exporess_price'][$key];

以上所述是小编给大家介绍的解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
在PHP3中实现SESSION的功能(三)
Oct 09 PHP
PHP导入Excel到MySQL的方法
Apr 23 PHP
PHP循环输出指定目录下的所有文件和文件夹路径例子(简单实用)
May 10 PHP
深入分析PHP引用(&amp;)
Sep 04 PHP
php实现mysql事务处理的方法
Dec 25 PHP
php绘制一条弧线的方法
Jan 24 PHP
PHP 绘制网站登录首页图片验证码
Apr 12 PHP
php mysql获取表字段名称和字段信息的三种方法
Nov 13 PHP
PHP通过引用传递参数用法分析
Dec 01 PHP
PHP实现生成数据字典功能示例
May 24 PHP
PHP正则表达式处理函数(PCRE 函数)实例小结
May 09 PHP
PHP sdk实现在线打包代码示例
Dec 09 PHP
PHP 实现浏览记录并按日期分组
May 11 #PHP
thinkPHP5 ACL用户权限模块用法详解
May 10 #PHP
使用WAMP搭建PHP本地开发环境
May 10 #PHP
thinkPHP5 tablib标签库自定义方法详解
May 10 #PHP
PHP实现获取第一个中文首字母并进行排序的方法
May 09 #PHP
php7 安装yar 生成docker镜像
May 09 #PHP
php简单生成一组与多组随机字符串的方法
May 09 #PHP
You might like
搜索引擎技术核心揭密
2006/10/09 PHP
PHP+AJAX实现无刷新注册(带用户名实时检测)
2006/12/02 PHP
php google或baidu分页代码
2009/11/26 PHP
PHP与C#分别格式化文件大小的代码
2011/05/14 PHP
PHP与Java进行通信的实现方法
2013/10/21 PHP
php中json_encode UTF-8中文乱码的更好解决方法
2014/09/28 PHP
PHP文件读取功能的应用实例
2015/05/08 PHP
PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例
2017/08/10 PHP
PHP自定义递归函数实现数组转JSON功能【支持GBK编码】
2018/07/17 PHP
php简单计算权重的方法示例【适合抽奖类应用】
2019/06/10 PHP
基于jQuery替换table中的内容并显示进度条的代码
2011/08/02 Javascript
用Js实现的动态增加表格示例自己写的
2013/10/21 Javascript
JS数字抽奖游戏实现方法
2015/05/04 Javascript
JavaScript实现动态添加,删除行的方法实例详解
2015/07/02 Javascript
javascript文本模板用法实例
2015/07/31 Javascript
Web开发使用Angular实现用户密码强度判别的方法
2017/09/27 Javascript
JavaScript实现区块链
2018/03/14 Javascript
Vue头像处理方案小结
2018/07/26 Javascript
AngularJS自定义表单验证功能实例详解
2018/08/24 Javascript
vue实现购物车抛物线小球动画效果的方法详解
2019/02/13 Javascript
Vue实现剪贴板复制功能
2019/12/31 Javascript
在Lighttpd服务器中运行Django应用的方法
2015/07/22 Python
Python编程实现双链表,栈,队列及二叉树的方法示例
2017/11/01 Python
Python3.6日志Logging模块简单用法示例
2018/06/14 Python
python 3.6.5 安装配置方法图文教程
2018/09/18 Python
基于django ManyToMany 使用的注意事项详解
2019/08/09 Python
python之pymysql模块简单应用示例代码
2019/12/16 Python
Django缓存Cache使用详解
2020/11/30 Python
纯CSS3实现扇形动画菜单(简化版)实例源码
2017/01/17 HTML / CSS
大四学生毕业自荐信
2013/11/07 职场文书
求职信模板标准格式范文
2014/02/23 职场文书
黄石寨导游词
2015/02/05 职场文书
2015年保安个人工作总结
2015/04/02 职场文书
导游词之清晏园
2019/11/22 职场文书
《艾尔登法环》1.03.3补丁上线 碎星伤害调整
2022/04/07 其他游戏
JS轻量级函数式编程实现XDM二
2022/06/16 Javascript