您的位置:首页 > 编程语言 > PHP开发

php处理HTML表单控件命名中的特殊符号

2007-12-19 10:55 447 查看
一、magic_quotes_gpc = Off
有这样的一个html页面

<form action='1.php' method='get'>
<input type='text' name=asd/f'gh/a.b.c/>
<input type='submit' value='submit'>
</form>

其中text控件命名为:asd/f'gh/a.b.c/ ,将此页面提交到1.php进行处理,method用get还是post方法无所谓。
1.php

<?php
print_r($_GET);
echo '<br>';
print $_GET['asd/f/'gh/a_b_c/']
?>

输入ssssssss点击提交,显示:
--------------------------------------------------------
Array ( [asd/f'gh/a_b_c/] => ssssssss )
ssssssss
--------------------------------------------------------
总结:input控件命名中的点号变为下划线。
另注:asp中input控件命名中的点号不变,取变量可用:Request.QueryString("asd/f'gh/a.b.c/")
二、magic_quotes_gpc = On
1.php改为

<?php
print_r($_GET);
echo '<br>';
print $_GET['asd/f///'gh/a_b_c/']
?>

提交后显示:
----------------------------------------------------------
Array ( [asd/f/'gh/a_b_c/] => ssssssss )
ssssssss
----------------------------------------------------------
总结:input控件命名中的点号变为下划线;并且单引号被自动加上一个反斜线进行转义,所以名字中增加了反斜线,在php中取传递来的值时要对GET变量名中的反斜线进行转义。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐