perlに詳しい方

以下のようなフォームがあったとします。
<form name="form1">
<input type="submit" name="a" value="abc">
<input type="submit" name="b" value="def">
</form>
このように、ひとつのフォームの中に送信ボタンが複数あるときに、処理を振り分けるにはどうすればよいかお願いします。
※今回はwindows上だけで行います。

回答の条件
  • 1人5回まで
  • 登録:2012/02/18 17:22:30
  • 終了:2012/02/25 17:25:09

ベストアンサー

id:windofjuly No.1

うぃんど回答回数2625ベストアンサー獲得回数11492012/02/18 18:06:10

パラメータが存在するかどうかで確認します
(例として、どちらも存在しない場合も入れてあります)

if ($query->param('a')) {
    print 'aaaaaaa';
} elsif ($query->param('b')) {
    print 'bbbbbbb';
} else {
    print 'ccccccc';
}

このあたりはperlの仕様ではなくHTMLフォームの仕様によるものなので、
perlに詳しいかどうかは実はあまり関係なかったりもします

その他の回答(1件)

id:windofjuly No.1

うぃんど回答回数2625ベストアンサー獲得回数11492012/02/18 18:06:10ここでベストアンサー

パラメータが存在するかどうかで確認します
(例として、どちらも存在しない場合も入れてあります)

if ($query->param('a')) {
    print 'aaaaaaa';
} elsif ($query->param('b')) {
    print 'bbbbbbb';
} else {
    print 'ccccccc';
}

このあたりはperlの仕様ではなくHTMLフォームの仕様によるものなので、
perlに詳しいかどうかは実はあまり関係なかったりもします

id:niwa-mikiho No.2

niwa-mikiho回答回数508ベストアンサー獲得回数382012/02/22 00:55:48

name 属性は重複しても構わないので、

<input type="submit" name="submit" value="abc">
<input type="submit" name="submit" value="def">

として、perl で
my $submit = $input->param('submt') || '';
if($submit eq 'abc'){
print 'A';
}elsif($submit eq 'def'){
print 'B';
}else{
print 'C';
}

で得られます。

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません