从$ _POST表单数据PHP中删除提交按钮值

时间:2012-05-28 12:10:38

标签: php forms post

我正在使用此循环打印所有格式的$ _POST数据:

foreach($_POST as $name => $value) {
print "$name : $value<br>";
}

结果是结果是提交按钮值(提交:编辑)这对我造成错误,因为有了这个foreac周期我正在向excel文档$name is cell, $value is cell value添加数据,所以如何删除按钮值清单?

5 个答案:

答案 0 :(得分:7)

你可以在做foreach之前解开它:

unset($_POST['submit']);

答案 1 :(得分:6)

您的提交按钮不需要在HTML中包含name属性。如果它没有名称,它将不会出现在POST数据中。

答案 2 :(得分:4)

只需使用continue;

跳过它
foreach($_POST as $name => $value) {
    if($name == "submit") continue;
    print "$name : $value<br>";
}

答案 3 :(得分:2)

怎么样?
foreach($_POST as $name => $value) {
    if($name != "submit"){
        print "$name : $value<br>";
    }
}

答案 4 :(得分:2)

你在做什么不是好习惯。在这种情况下,将数据传递到Excel电子表格中,您不太可能遇到问题,但是,这是一个危险的习惯。

您已为每个输入设计了表单和给定名称,因此您可以提前知道$ _POST数组将包含哪些索引。您应该只显示$ _POST数组中的那些值,并根据需要验证每个值。

不要忘记$ _POST来自用户,因此不值得信任。额外的字段可以添加到$ _POST数组中,就目前而言,您的代码将很乐意处理它们。

这可能是您的代码中的问题,也可能不是问题,但您至少应该考虑它。