私はCGI Perlの初心者で、「モード」変数と「アクション」変数を使用してロードするページを決定するWebアプリに取り組んでいます。
$mode = param('mode');
$action = param('action');
if ($mode eq 'page1') {
if ($action 'eq') {
&performAction;
}
displayPage1;
}
elsif ($mode eq 'page2') {
&displayPage2
}
開発中、フォームの送信後にさまざまなモード/アクションに移動しようとするときに、これらの変数を設定する最良の方法を見つけるのに苦労しました。
場合によっては、フォームに非表示の値を入れると機能します
hidden(-name=>'action',-value=>'save')
しかし、そうでない場合もあります。後者の場合、フォームの前に param('action',"save") を置くと、フォームが送信されたときにアクションが変更されます。 なぜこれが起こるのか理解できませんが、私が気付いていないこれら 2 つの変数に影響を与える要因はありますか?
私が今する必要があるのは、同じフォームに 2 つのボタンを配置することです。1 つはフォーム データを保存するアクションを設定するだけで、もう 1 つはフォーム データを保存しますが、そのフォーム データを使用して別のモード/ページに移動します。
誰かが少なくとも私が研究すべきことについて正しい方向に私を向けることができれば、私は大いに感謝します.