如何在php中解析动态_POST变量

时间:2014-11-10 18:28:13

标签: php mysql forms post

我坚持使用php / mySQL的东西..

我有一个动态创建的表单,我想解析它生成的$ _POST变量。具体来说,我在SQL中有一个查询,它在我的表单中生成字段。然后,我需要在php文件中处理这些变量,表单的操作在那里。

但是,我无法解析动态创建的$ _POST变量。以下是我的代码:

$sql="just-a-query";
$result = mysql_query($sql);
while ($data = mysql_fetch_array($result)) {
    ${''.$data['parameterName']}=$_POST[$data['parameterName']];
}

例如,如果我有3个变量通过表单获取值:

house=1
tree=3
car=2

我想通过php保存它们:

$house=$_POST['house'];
$tree=$_POST['tree'];
$car=$_POST['car'];

但是我无法通过它。它返回未定义的索引错误。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

如果您想在使用变量之前找到变量,那么就像使用isset()一样简单:

if( isset($_POST[$data['parameterName']]) ) {
    ${''.$data['parameterName']}=$_POST[$data['parameterName']];
}

另一方面,如果它应该被定义(你看到表单元素),但它没有在回发中定义。首先检查以确保您的表单提交类型是post,然后检查以确保您在表单元素中使用name属性。

答案 1 :(得分:0)

谢谢你的时间。我的问题是我正在从HTML中解析错误的参数。

是的,我是个白痴,是的,var_dump()帮助我解决了我的错误。

再次感谢!

顺便说一句,我的代码工作得很好。哈!