• ベストアンサー

NAME が同じ複数の INPUT データの空判定

お世話になっております。 <FORM> <INPUT TYPE="text" NAME="A"> <INPUT TYPE="text" NAME="A"> <INPUT TYPE="text" NAME="A"> </FORM> という形で3つの INPUT からデータを1つの変数に受け取り、その上で3つの内のいずれか(特定はできなくても構いません)が入力されていない場合に、エラーを返したいのですが、どのようにしたら良いでしょうか。 ご教示宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • mflow
  • ベストアンサー率63% (42/66)
回答No.2

CGIモジュールを使えば至極簡単です(何使っても簡単ですが) use CGI qw(:cgi); my $q = new CGI; my @A = $q->param('A'); unless(@A){ print '@Aは空でした' } はいどうぞ。

pantonenezu
質問者

お礼

遅くなりまして申し訳ありません。 ご回答ありがとうございました。

その他の回答 (1)

noname#25358
noname#25358
回答No.1

 メソッドがGETとPOSTの場合とで取り方が違いますが、GETの場合には、$ENV{QUERY_STRING} に値が入ってますね。  んで、"text=&text=&text=" とか、こんな感じで同じものが複数渡ってきます。それを見て判別できます。  ただし、あなたが望むとおりに連続しているとは限らず、他の <INPUT> タグの情報が挟まってるかもしれません。

pantonenezu
質問者

お礼

同じNAMEでも連続しない可能性があるのですね。 GETでは何やら面倒そうなので、取り敢えずPOSTで取ってみようと思います。 御回答有難う御座いました。

関連するQ&A