解决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 相关文章推荐
一个odbc连mssql分页的类
Oct 09 PHP
一段防盗连的PHP代码
Dec 06 PHP
探讨如何在PHP开启gzip页面压缩实例
Jun 09 PHP
php二维码生成
Oct 19 PHP
php 使用fopen函数创建、打开文件详解及实例代码
Sep 24 PHP
PHP对称加密算法(DES/AES)类的实现代码
Nov 14 PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
Jun 16 PHP
php 中phar包的使用教程详解
Oct 26 PHP
PHP获取HTTP body内容的方法
Dec 31 PHP
PHP getDocNamespaces()函数讲解
Feb 03 PHP
浅谈laravel 5.6 安装 windows上使用composer的安装过程
Oct 18 PHP
laravel5.6 框架操作数据 Eloquent ORM用法示例
Jan 26 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判断输入不超过mysql的varchar字段的长度范围
2011/06/24 PHP
php文件上传的例子及参数详解
2013/12/12 PHP
详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)
2017/04/07 PHP
php中通用的excel导出方法实例
2017/12/30 PHP
jQuery 判断元素上是否绑定了事件
2009/10/28 Javascript
JQuery打造PHP的AJAX表单提交实例
2009/11/03 Javascript
JavaScript CSS 修改学习第四章 透明度设置
2010/02/19 Javascript
javascript淡入淡出效果的实现思路
2012/03/31 Javascript
JavaScript学习笔记记录我的旅程
2012/05/23 Javascript
js window对象属性和方法相关资料整理
2015/11/11 Javascript
jQuery替换节点用法示例(使用replaceWith方法)
2016/09/08 Javascript
angular select 默认值设置方法
2017/06/23 Javascript
zTree异步加载展开第一级节点的实现方法
2017/09/05 Javascript
ionic3实战教程之随机布局瀑布流的实现方法
2017/12/28 Javascript
在博客园博文中添加自定义右键菜单的方法详解
2020/02/05 Javascript
python生成式的send()方法(详解)
2017/05/08 Python
Python 加密的实例详解
2017/10/09 Python
python使用pil库实现图片合成实例代码
2018/01/20 Python
python微信跳一跳系列之色块轮廓定位棋盘
2018/02/26 Python
Python人脸识别第三方库face_recognition接口说明文档
2019/05/03 Python
Python获取时间戳代码实例
2019/09/24 Python
QML实现钟表效果
2020/06/02 Python
python和c语言哪个更适合初学者
2020/06/22 Python
python asyncio 协程库的使用
2021/01/21 Python
聊聊python在linux下与windows下导入模块的区别说明
2021/03/03 Python
伊芙丽官方旗舰店:中国淑女一线品牌
2017/12/01 全球购物
英国皇家造币厂:The Royal Mint
2018/10/05 全球购物
Laura Geller官网:美国彩妆品牌
2018/12/29 全球购物
实习生自荐信范文分享
2013/11/27 职场文书
超市后勤自我鉴定
2014/01/17 职场文书
数控专业大学毕业生职业规划范文
2014/02/06 职场文书
小学生爱国演讲稿
2014/04/25 职场文书
谢师宴答谢词
2015/01/05 职场文书
thinkphp 获取控制器及控制器方法
2021/04/16 PHP
nginx搭建NFS网络文件系统
2022/04/14 Servers
MySQL的存储过程和相关函数
2022/04/26 MySQL