PHP でのフォーム データの処理は、他の Web プログラミング言語よりも簡単です。この言語をしばらく使用すると、これが議論の余地のない事実であることがわかります。この操作の単純さにより、複数のボタンを使用して同じフォームで異なるタスクを処理するという今日の話題を含む、より複雑なフォーム イベントを簡単に処理できるようになります。
なぜ複数の送信タスクを使用するのですか?
この質問に答える前に、明らかな質問に答えておきます。多くのフォームは 1 つの送信ボタンに適しているのに、なぜ 2 つ (またはそれ以上) の送信ボタンが必要になることがありますか?
この問題を説明する最良の方法は、私の最近の開発プロジェクトの例を使用することです。このプロジェクトでの私の仕事は、図書館の詳細なカタログ照会システムを構築することです。書籍のタイトルはデータベースに保存され、管理者はブラウザベースのインターフェイスを使用して任意の書籍の記録を表示し、その記録に対して 4 つの操作 (会員返却登録、会員貸出登録、図書紛失記録) のいずれかを選択して実行できます。そして本の販売記録。
上記のタスクはすべて独立したフォームを通じて処理する必要があるため、これらのタスクに応答するには対応するボタンが必要です。フォームに渡されたデータは、クリックされたボタンに応じて、さまざまな方法で処理されます (借用/返却と会員レコードは相互に関連しており、紛失/販売レコードは在庫テーブルを変更します)。フォームは 1 つの固有のタスクのみを処理できるため、同じ PHP スクリプトは、クリックされたボタンに基づいて上記の 4 つのタスクを処理し、適切なコード セグメントを実行できます。したがって、複数のタスク送信ボタンを処理する単一のフォームと、さまざまなボタンへの自動応答を実装するフォーム処理コード セグメントが必要です。
最初に、送信ボタンのあるフォームという簡単な例を示します。これにより、基本概念を明確に理解し、今後のより複雑な例に備えることができます。これはフォームです:
シングルボタンフォーム