重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

phpをさわりはじめたばかりの者です。

FORMで送信する項目を全て必須項目としたい時、全項目分だけ、$_POST['FORMのNAME値']でFORMのVALUE値を確認すれば目的は達せられると思うのですが、極端な話になりますが、項目数がとても多い場合は、それだけ記述すべき行数が増えてしまうんじゃないかと思いますがどうなんでしょう?

count($_POST)でFORMから送られた項目総数が出せるのなら、送られた項目名(NAME値)はどのような記述で出せるのか調べてみましたが、私の調べた限りでは見つけることができませんでした。

例えば、項目総数分だけ、$_POST['項目名']を繰り返す・・・というようなfor文にでもできれば、よりスマートなのかな?と考えては見たものの、送信された項目名がどのような記述で得られるのかがわかりません。

どなたかご存知の方がいらっしゃいましたら、教えていただけますか?

A 回答 (2件)

No 1の人の補足



foreach($_POST as $varname=>$varvalue){
処理
}
で良いと思います。
面倒なときに楽をしようとするのがプログラミングの基本ですね。
項目名と変数の関係がだいたい一緒ならこれで良いと思います。
通常は、POSTで入って来る項目や変数は、型も、入力チェック項目も、数もそれぞれ違ったりするので、私自身はこういう方法をとった事はありませんが。
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。
この「as」の存在を知らなかったので良い勉強になりました。
得られる値も希望通りでしたので、質問を締め切らせていただきます。

お礼日時:2006/06/29 08:51

普通に増えると思います。


そして、入力チェックとか考えると、
行数はさらに増えると思います。

項目数出さずに、
foreachで回してみるとか…。
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。
希望通りの回答が出ましたので、質問を締め切らせていただきます。

お礼日時:2006/06/29 08:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!