解决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预定义常量
Dec 25 PHP
PHP的单引号和双引号 字符串效率
May 27 PHP
PHP网站备份程序代码分享
Jun 10 PHP
mcrypt启用 加密以及解密过程详细解析
Aug 07 PHP
php实现递归与无限分类的方法
Feb 16 PHP
php实现分页显示
Nov 03 PHP
PHP与Ajax相结合实现登录验证小Demo
Mar 16 PHP
CI框架源码解读之利用Hook.php文件完成功能扩展的方法
May 18 PHP
PHP面向对象程序设计方法实例详解
Dec 24 PHP
yii2实现分页,带搜索的分页功能示例
Jan 07 PHP
TP5框架实现上传多张图片的方法分析
Mar 29 PHP
通过PHP实现获取访问用户IP
May 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
PHP 5.0对象模型深度探索之类的静态成员
2008/03/27 PHP
Ajax+PHP 边学边练 之二 实例
2009/11/24 PHP
php 注释规范
2012/03/29 PHP
PHP mysql与mysqli事务使用说明 分享
2013/08/17 PHP
destoon数据库表说明汇总
2014/07/15 PHP
CentOS安装php v8js教程
2015/02/26 PHP
php实现递归的三种基本方式
2020/07/04 PHP
基于php流程控制语句和循环控制语句(讲解)
2017/10/23 PHP
jquery索引在使用中的一些困惑
2013/10/24 Javascript
Javascript动画的实现原理浅析
2015/03/02 Javascript
JS使用ajax从xml文件动态获取数据显示的方法
2015/03/24 Javascript
Dropzone.js实现文件拖拽上传功能(附源码下载)
2016/11/22 Javascript
js 单引号替换成双引号,双引号替换成单引号的实现方法
2017/02/16 Javascript
微信小程序之前台循环数据绑定
2017/08/18 Javascript
ionic3实战教程之随机布局瀑布流的实现方法
2017/12/28 Javascript
axios拦截设置和错误处理方法
2018/03/05 Javascript
vue+mousemove实现鼠标拖动功能(拖动过快失效问题解决方法)
2018/08/24 Javascript
node实现简单的增删改查接口实例代码
2019/08/22 Javascript
如何解决django配置settings时遇到Could not import settings 'conf.local'
2014/11/18 Python
python解析xml文件实例分析
2015/05/27 Python
python制作最美应用的爬虫
2015/10/28 Python
深入理解python中的atexit模块
2017/03/07 Python
用python的turtle模块实现给女票画个小心心
2019/11/23 Python
通过代码实例了解Python sys模块
2020/09/14 Python
css3打造一款漂亮的卡哇伊按钮
2013/03/20 HTML / CSS
CSS3实现时间轴特效
2020/11/02 HTML / CSS
CSS3 实现图形下落动画效果
2020/11/13 HTML / CSS
three.js模拟实现太阳系行星体系功能
2019/09/03 HTML / CSS
Swisse官方海外旗舰店:澳大利亚销量领先,自然健康品牌
2017/12/15 全球购物
食品营养与检测应届生求职信
2013/11/08 职场文书
交通事故私了协议书
2014/04/16 职场文书
地球物理学专业推荐信
2014/09/08 职场文书
三好生演讲稿
2014/09/12 职场文书
新生儿未入户证明
2015/06/23 职场文书
MySQL图形化管理工具Navicat安装步骤
2021/12/04 MySQL
2022微信温控新功能上线
2022/05/09 数码科技