解决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 相关文章推荐
真正的ZIP文件操作类(php)
Jul 21 PHP
php学习之 认清变量的作用范围
Jan 26 PHP
PHP学习笔记之二 php入门知识
Jan 12 PHP
php读取EXCEL文件 php excelreader读取excel文件
Dec 06 PHP
探讨:php中在foreach中使用foreach ($arr as &amp;$value) 这种类型的解释
Jun 24 PHP
使用PHP实现生成HTML静态页面
Nov 18 PHP
高质量PHP代码的50个实用技巧必备(上)
Jan 22 PHP
PHP打印输出函数汇总
Aug 28 PHP
PHP与SQL语句常用大全
Dec 10 PHP
php实现微信企业转账功能
Oct 02 PHP
PHP使用Redis实现Session共享的实现示例
May 12 PHP
浅谈Laravel中使用Slack进行异常通知
May 29 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 计算代码执行耗时的代码修正网上普遍错误
2011/05/14 PHP
基于empty函数的输出详解
2013/06/17 PHP
async和DOM Script文件加载比较
2014/07/20 PHP
php获取YouTube视频信息的方法
2015/02/11 PHP
yii 2.0中表单小部件的使用方法示例
2017/05/23 PHP
PHP延迟静态绑定的深入讲解
2018/04/02 PHP
php 字符串中是否包含指定字符串的多种方法
2018/04/12 PHP
Ajax+Jpgraph实现的动态折线图功能示例
2019/02/11 PHP
JQuery 学习笔记 选择器之四
2009/07/23 Javascript
html页面显示年月日时分秒和星期几的两种方式
2013/08/20 Javascript
Javascript delete 引用类型对象
2013/11/01 Javascript
JS 删除字符串最后一个字符的实现代码
2014/02/20 Javascript
js读取cookie方法总结
2014/10/31 Javascript
浅谈NodeJS中require路径问题
2015/05/07 NodeJs
基于vue的下拉刷新指令和滚动刷新指令
2016/12/23 Javascript
使用webpack-dev-server处理跨域请求的方法
2018/04/18 Javascript
Vue二次封装axios为插件使用详解
2018/05/21 Javascript
Node对CommonJS的模块规范
2019/11/06 Javascript
JavaScript中继承原理与用法实例入门
2020/05/09 Javascript
python使用xmlrpclib模块实现对百度google的ping功能
2015/06/02 Python
Python中列表、字典、元组数据结构的简单学习笔记
2016/03/20 Python
python实现给scatter设置颜色渐变条colorbar的方法
2018/12/13 Python
python中的列表与元组的使用
2019/08/08 Python
Python通过正则库爬取淘宝商品信息代码实例
2020/03/02 Python
Python高阶函数与装饰器函数的深入讲解
2020/11/10 Python
Python 实现键盘鼠标按键模拟
2020/11/18 Python
HTML5 Canvas标签使用收录
2009/07/07 HTML / CSS
HTML 5.1来了 9月份正式发布 更新内容预览
2016/04/26 HTML / CSS
HTML5之tabindex属性全面解析
2016/07/07 HTML / CSS
高清屏中使用Canvas绘图出现模糊的问题及解决方法
2019/06/03 HTML / CSS
英国床垫在线:Mattress Online
2016/12/07 全球购物
顶岗实习计划书
2014/01/10 职场文书
国贸专业求职信
2014/06/28 职场文书
营业用房租赁协议书
2014/11/26 职场文书
2015年档案管理员工作总结
2015/05/13 职场文书
了解MySQL查询语句执行过程(5大组件)
2022/08/14 MySQL