1

このサイクルを使用して、すべてのフォーム$_POSTデータを印刷しています。

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

そして、結果の最後に送信ボタン値(送信:編集)があり、これによりエラーが発生します。このフォアックサイクルでは、Excelドキュメントにデータを追加している$name is cell, $value is cell valueので、リストからボタン値を削除するにはどうすればよいですか?

4

5 に答える 5

7

foreachを実行する前に、設定を解除することができます。

unset($_POST['submit']);
于 2012-05-28T12:13:22.647 に答える
6

name送信ボタンは、HTMLに属性を持っている必要はありません。名前がない場合、POSTデータには存在しません。

于 2012-05-28T12:13:23.017 に答える
5

スキップしてcontinue;

foreach($_POST as $name => $value) {
    if($name == "submit") continue;
    print "$name : $value<br>";
}
于 2012-05-28T12:13:25.590 に答える
2

どうですか

foreach($_POST as $name => $value) {
    if($name != "submit"){
        print "$name : $value<br>";
    }
}
于 2012-05-28T12:13:29.307 に答える
2

あなたがしていることは良い習慣ではありません。この場合、データをExcelスプレッドシートに渡すと、問題が発生する可能性は低くなりますが、これは危険な習慣です。

フォームを設計し、各入力に名前を付けたので、$_POST配列に含まれるインデックスを事前に知っています。$ _POST配列内のこれらの値のみを明示的に参照し、必要に応じてそれぞれを検証する必要があります。

$ _POSTはユーザーからのものであるため、信頼できないことを忘れないでください。$ _POST配列に追加のフィールドを追加することができ、現状では、コードはそれらを適切に処理します。

これはコードの問題である場合とそうでない場合がありますが、少なくともそれについて考える必要があります。

于 2012-05-28T14:59:00.367 に答える