thinkphp里 表单提交数组的问题

WBOY
发布: 2016-06-23 14:01:03
原创
1818 人浏览过

表单

<td class="norightborder">		<tbody>			<tr >				<td width="350" style="width:350px;"><input type="text" name="option[]" value="" class="px" style="width:350px;"></td>				<td><input type="text" name="listorder[]" value="1" style="width:35px;" class="px"></td>							</tr>			<tr >				<td width="350" style="width:350px;"><input type="text" name="option[]" value="" class="px" style="width:350px;"></td>				<td><input type="text" name="listorder[]" value="2" style="width:35px;" class="px"></td>							</tr>			<tr >				<td width="350" style="width:350px;"><input type="text" name="option[]" value="" class="px" style="width:350px;"></td>				<td><input type="text" name="listorder[]" value="3" style="width:35px;" class="px"></td>							</tr>			
登录后复制


提交到后台打印出的数组是这样的
string(5) "Array" 怎么才能显示出值


回复讨论(解决方案)

你是如何打印的?

print_r($_POST['listorder']);

你这是echo出来的吧

你在接收页面 直接print_r($_POST);
看看什么效果, 你这应该是用var_dump()输出的吧?

表单没有问题
print_r($_GET['listorder'])就可以了

你是如何打印的? 我是这么打印的 print_r($_POST)

你在接收页面 直接print_r($_POST);
看看什么效果, 你这应该是用var_dump()输出的吧? 我刚开始是 print_r($_POST) 打印的 打印出来是 ['listorder']=array 后来 我想查看一下数据类型才用 var_dump 发现是 string

你没有用 thinkphp 提供的传入数据处理机制吗?
你自己做了处理?
贴出相关代码

你没有用 thinkphp 提供的传入数据处理机制吗?
你自己做了处理?
贴出相关代码
谢谢斑竹的热心回答 找了半天是这边给过滤了 但是为什么trim过滤就不能提交数组了

        // 系统变量安全过滤        if(C('VAR_FILTERS')) {            $filters    =   explode(',',C('VAR_FILTERS'));            foreach($filters as $filter){                // 全局参数过滤                $_POST  =   array_map($filter,$_POST);                $_GET   =   array_map($filter,$_GET);            }        }$filters 是 Array(    [0] => trim)
登录后复制
       

如果  $_POST 是多维数组,则除一维都会出问题

这样写比较好
array_walk_recursive($_POST, 'trim');
array_walk_recursive($_GET, 'trim');

谢谢大家的热心帮忙

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板