解决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 相关文章推荐
php 什么是PEAR?(第三篇)
Mar 19 PHP
php 自写函数代码 获取关键字 去超链接
Feb 08 PHP
Php获取金书网的书名的实现代码
Jun 11 PHP
php表单提交问题的解决方法
Apr 12 PHP
五款常用mysql slow log分析工具的比较分析
May 22 PHP
PHP curl实现抓取302跳转后页面的示例
Jul 04 PHP
PHP使用静态方法的几个注意事项
Sep 16 PHP
微信公众号判断用户是否已关注php代码解析
Jun 24 PHP
PHPMailer发送邮件
Dec 28 PHP
phpMyAdmin无法登陆的解决方法
Apr 27 PHP
php如何把表单内容提交到数据库
Jul 08 PHP
php+js实现的无刷新下载文件功能示例
Aug 23 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
php获取网页上所有链接的方法
2015/04/03 PHP
PHP数组相加操作及与array_merge的区别浅析
2016/11/26 PHP
Some tips of wmi scripting in jscript (1)
2007/04/03 Javascript
jQuery调用WebService的实现代码
2011/06/19 Javascript
修复ie8&amp;chrome下window的resize事件多次执行
2011/10/20 Javascript
JavaScript操纵窗口的方法小结
2013/06/28 Javascript
Knockout数组(observable)使用详解示例
2013/11/15 Javascript
jQuery 设置 CSS 属性示例介绍
2014/01/16 Javascript
Jquery响应回车键直接提交表单操作代码
2014/07/25 Javascript
jQuery实现的感应鼠标悬停图片色彩渐显效果
2015/03/03 Javascript
JavaScript实现倒计时代码段Item1(非常实用)
2015/11/03 Javascript
TypeScript Type Innference(类型判断)
2016/03/10 Javascript
详解Bootstrap的iCheck插件checkbox和radio
2016/08/24 Javascript
JS模拟实现哈希表及应用详解
2018/05/04 Javascript
jQuery轻量级表单模型验证插件
2018/10/15 jQuery
详解vue父子组件关于模态框状态的绑定方案
2019/06/05 Javascript
解决layer.open后laydate失效的问题
2019/09/06 Javascript
Vue实现数据请求拦截
2019/10/23 Javascript
微信小程序开发之获取用户手机号码(php接口解密)
2020/05/17 Javascript
[58:15]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 NB vs Liquid
2018/04/02 DOTA
Python编程中实现迭代器的一些技巧小结
2016/06/21 Python
浅谈Python类里的__init__方法函数,Python类的构造函数
2016/12/10 Python
python垃圾回收机制(GC)原理解析
2019/12/30 Python
浅谈PyTorch的可重复性问题(如何使实验结果可复现)
2020/02/20 Python
Win10下配置tensorflow-gpu的详细教程(无VS2015/2017)
2020/07/14 Python
python 基于opencv操作摄像头
2020/12/24 Python
Html5嵌入钉钉的实现示例
2020/06/04 HTML / CSS
美国婴儿用品店:Babies”R”Us
2017/10/12 全球购物
荷兰DOD药房中文官网:DeOnlineDrogist
2020/12/27 全球购物
CSS代码检查工具stylelint的使用方法详解
2021/03/27 HTML / CSS
借款协议书范本
2014/04/22 职场文书
2014最新实习证明模板
2014/10/02 职场文书
班子查摆四风个人对照检查材料思想汇报
2014/10/04 职场文书
老人节标语大全
2014/10/08 职场文书
迁徙的鸟观后感
2015/06/09 职场文书
Java 多态分析
2022/04/26 Java/Android