PHP表单提交表单名称含有点号(.)则会被转化为下划线(_)


Posted in PHP onDecember 14, 2011

最近在做公司项目的时候,发现一个奇怪的问题,递交一个正常表单,竟然发现不能正常获取到递交的值,这一发现,不免让我开始的时候一头雾水,开始的时候一度认为是我的服务有问题,不能正常的写入数据库,后来侦测SQL语句发现,原来问题竟然出现在获取数据上,获取到的数据竟然都是空的,后来一调试发现,原来递交到后端的所有变量,都已经不是预期中的变量,竟然被PHP转化了。
提供测试代码如下:

<html> 
<head> 
<title>测试表单提交</title> 
</head> 
<body> 
<form action="" method="post"> 
名字:<input type="text" value="test" name="info.name" /><br/> 
密码: <input type="text" value="hahaha" name="info.pwd" /><br/> 
QQ: <input type="text" value="961412" name=".info.qq" /><br/> 
住址: <input type="text" value="zhejiang" name="info|address" /><br/> 
电话: <input type="text" value="123456789" name="1——phone" /><br/> 
性别: <input type="radio" name="info_gender" value="1" checked>男 <input type="radio" name="info_gender" value="2">女<br/> 
<button type="submit" name="submit" value=""> commit</button> 
</form> 
</body> 
</html> 
<?php 
if ($_POST) { 
echo '<pre/>'; 
var_export($_POST); 
} 
?>

代码实例1
运行之后结果如下:

PHP表单提交表单名称含有点号(.)则会被转化为下划线(_)

图1
可以看到,所有我在控件中含有的.号,都被后端转化成了_下划线,为了测试其他的一些符号,所以做了如上的测试,至今为止,仅发现点号(.)会被转化为下划线(_),所以导致在后端我想当然的用info.name去访问的时候,不能发现,因为它其实已经被转化成了info_name。

所以以后大家在使用表单的时候,尽量不要用.命名。

PHP 相关文章推荐
PHP连接access数据库
Mar 27 PHP
PHP 远程文件管理,可以给表格排序,遍历目录,时间排序
Aug 07 PHP
超级好用的一个php上传图片类(随机名,缩略图,加水印)
Jun 30 PHP
PHP中register_globals参数为OFF和ON的区别(register_globals 使用详解)
Feb 05 PHP
PHP面向对象学习笔记之二 生成对象的设计模式
Oct 06 PHP
PHP的Yii框架中Model模型的学习教程
Mar 29 PHP
对PHP依赖注入的理解实例分析
Oct 09 PHP
关于php中的json_encode()和json_decode()函数的一些说明
Nov 20 PHP
CI框架实现框架前后端分离的方法详解
Dec 30 PHP
PHP+Session防止表单重复提交的解决方法
Apr 09 PHP
PDO::_construct讲解
Jan 27 PHP
Thinkphp5框架中引入Markdown编辑器操作示例
Jun 03 PHP
php中日期加减法运算实现代码
Dec 08 #PHP
php使用Smarty的相关注意事项及访问变量的几种方式
Dec 08 #PHP
在PHP中利用wsdl创建标准webservice的实现代码
Dec 07 #PHP
PHP新手NOTICE错误常见解决方法
Dec 07 #PHP
PHPExcel读取Excel文件的实现代码
Dec 06 #PHP
PHP spl_autoload_register实现自动加载研究
Dec 06 #PHP
采用PHP函数memory_get_usage获取PHP内存清耗量的方法
Dec 06 #PHP
You might like
全国FM电台频率大全 - 24 贵州省
2020/03/11 无线电
php 字符转义 注意事项
2009/05/27 PHP
PHP5中使用DOM控制XML实现代码
2010/05/07 PHP
php实现解析xml并生成sql语句的方法
2018/02/03 PHP
php写app用的框架整理
2019/09/29 PHP
js技巧--转义符&quot;\&quot;的妙用
2007/01/09 Javascript
Jquery响应回车键直接提交表单操作代码
2014/07/25 Javascript
jQuery扁平化风格下拉框美化插件FancySelect使用指南
2015/02/10 Javascript
jQuery的ajax和遍历数组json实例代码
2016/08/01 Javascript
JS解决移动web开发手机输入框弹出的问题
2017/03/31 Javascript
nodejs构建本地web测试服务器 如何解决访问静态资源问题
2017/07/14 NodeJs
解决vue+webpack打包路径的问题
2018/03/06 Javascript
vue.js获得当前元素的文字信息方法
2018/03/09 Javascript
vue动态设置img的src路径实例
2018/09/18 Javascript
微信小程序MUI侧滑导航菜单示例(Popup弹出式,左侧不动,右侧滑动)
2019/01/23 Javascript
微信小程序tabBar设置实例解析
2019/11/14 Javascript
JavaScript实现HSL拾色器
2020/05/21 Javascript
Node使用koa2实现一个简单JWT鉴权的方法
2021/01/26 Javascript
python字符串编码识别模块chardet简单应用
2015/06/15 Python
python监控linux内存并写入mongodb(推荐)
2017/09/11 Python
python matplotlib库绘制条形图练习题
2019/08/10 Python
python智联招聘爬虫并导入到excel代码实例
2019/09/09 Python
Python 获取numpy.array索引值的实例
2019/12/06 Python
详解Scrapy Redis入门实战
2020/11/18 Python
详解使用python爬取抖音app视频(appium可以操控手机)
2021/01/26 Python
CSS3轻松实现清新 Loading 效果的简单实例
2016/06/06 HTML / CSS
全球性的女装店:storets
2019/06/12 全球购物
抽样调查项目计划书
2014/04/24 职场文书
锦旗标语大全
2014/06/23 职场文书
思想纪律作风整顿剖析材料
2014/10/11 职场文书
有限责任公司股东合作协议书
2014/12/02 职场文书
2014年幼儿园德育工作总结
2014/12/17 职场文书
责任书格式
2019/04/18 职场文书
创业计划书之电动车企业
2019/10/11 职场文书
pycharm2021激活码使用教程(永久激活亲测可用)
2021/03/30 Python
详解MongoDB的条件查询和排序
2021/06/23 MongoDB