解决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 相关文章推荐
获得Google PR值的PHP代码
Jan 28 PHP
PHP实现多条件查询实例代码
Jul 17 PHP
PHP运行环境配置与开发环境的配置(图文教程)
Jun 04 PHP
xss防御之php利用httponly防xss攻击
Mar 21 PHP
PHP多文件上传类实例
Mar 07 PHP
PHP实现C#山寨ArrayList的方法
Jul 16 PHP
phpmailer简单发送邮件的方法(附phpmailer源码下载)
Jun 13 PHP
Laravel框架模板继承操作示例
Jun 11 PHP
PHP实现断点续传乱序合并文件的方法
Sep 06 PHP
PHP中使用mpdf 导出PDF文件的实现方法
Oct 22 PHP
PHP使用mongoclient简单操作mongodb数据库示例
Feb 08 PHP
Yii框架使用PHPExcel导出Excel文件的方法分析【改进版】
Jul 24 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 发送数据
2006/10/09 PHP
用PHP控制用户的浏览器--ob*函数的使用说明
2007/03/16 PHP
header跳转和include包含问题详解
2012/09/08 PHP
使用PHP实现阻止用户上传成人照片或者裸照
2014/12/25 PHP
PHP连接MYSQL数据库的3种常用方法
2017/02/27 PHP
js 图片轮播(5张图片)
2008/12/30 Javascript
JavaScript实现页面实时显示当前时间的简单实例
2013/07/20 Javascript
js控制表单不能输入空格的小例子
2013/11/20 Javascript
JS取文本框中最小值的简单实例
2013/11/29 Javascript
javascript中不等于的代码是什么怎么写
2013/12/29 Javascript
Extjs中RowExpander控件的默认展开问题示例探讨
2014/01/24 Javascript
jquery 淡入淡出效果的简单实现
2014/02/07 Javascript
jQuery中Form相关知识汇总
2015/01/06 Javascript
轻松学习jQuery插件EasyUI EasyUI创建CRUD应用
2015/11/30 Javascript
JS添加或修改控件的样式(Class)实现方法
2016/10/15 Javascript
微信小程序 wx:key详细介绍
2016/10/28 Javascript
Angular2 自定义validators的实现方法
2017/07/05 Javascript
three.js加载obj模型的实例代码
2017/11/10 Javascript
JavaScript静态作用域和动态作用域实例详解
2019/06/17 Javascript
localstorage实现带过期时间的缓存功能
2019/06/28 Javascript
LayUi使用switch开关,动态的去控制它是否被启用的方法
2019/09/21 Javascript
关于vue里页面的缓存详解
2019/11/04 Javascript
Postman无法正常返回结果问题解决
2020/08/28 Javascript
JS画布动态实现黑客帝国背景效果
2020/11/08 Javascript
关于element的表单组件整理笔记
2021/02/05 Javascript
Python深入学习之对象的属性
2014/08/31 Python
举例讲解Python中的身份运算符的使用方法
2015/10/13 Python
python实现四人制扑克牌游戏
2020/04/22 Python
HTML5 3D旋转相册的实现示例
2019/12/03 HTML / CSS
新教师工作感言
2014/02/16 职场文书
公司委托书格式范本
2014/09/16 职场文书
教代会闭幕词
2015/01/28 职场文书
千手观音观后感
2015/06/03 职场文书
承诺书应该怎么写?
2019/09/10 职场文书
利用Python网络爬虫爬取各大音乐评论的代码
2021/04/13 Python
Python 如何实现文件自动去重
2021/06/02 Python