1 つのフォームから複数の MySQL テーブルにデータを挿入しようとしています (MYSQL 構文を使用しますが、アプリケーション MYSQLi をいつか移行する予定です。これはおそらく今のところ関係ありませんが、" MYSQLi でこれを行う必要があります」というコメントが必然的に続きます-私はそうすべきだと知っています、そして私は...すぐに...しかし、私の手に負えない多くの理由で、私はまだできません、そして私たちはまだ必要ですこの作業)。
基本的に、「多対多」のテーブル構造 (つまり、多くのカテゴリの一部となるインスタンス、および多くのインスタンスを含むカテゴリ) に挿入しています。メイン テーブルInstances
には、すべての主要なデータがあります (この場合、マップ上の場所 - たとえば、「Acme Cafe」、「Lakeside Picnic Area」など)。別のテーブルCategories
には、テーブル内のすべての場所のすべての可能なカテゴリが含まれていinstances
ます。たとえば、「カフェ」、「パブ」、「視点」などです。結合テーブルは、テーブルInstance_Categories
内の場所をInstances
テーブル内のカテゴリに接続しCategories
ます。
PHP フォームには次のフィールドがあります。
Reference
Instance_Categories
(テーブル内の多くのカテゴリでインスタンスを識別するために使用される、ランダムに生成された 9 桁の識別子)Name
(テキストボックス)Address
(テキストボックス)Phone
(テキストボックス)Tick-box
各カテゴリのフィールド (8 つ)。
Instances
テーブルには次の列があります
ID
(テーブルに固有)Reference
(上記のフォーム入力を参照)Name
Address
Phone
Categories
テーブルには次の列があります
ID
(テーブルに固有)Category
(varchar)Category_Ref
Instances_Categories
(接続テーブル内の参照を識別するための番号)
Instances_Categories
テーブルには次の列があります。
ID
(テーブルに固有)Instance_Ref
(上記のフォーム入力から)Category_Ref
(Categories
上表関連)
INSERT
データベースにデータを挿入するためのステートメントを作成するにはどうすればよいですか? テーブルごとに挿入コマンドを作成し、同じ [送信] ボタンから次々に実行することはできますか? Instances_Categories
また、選択されたカテゴリのチェックボックスの数に応じて、挿入コマンドでより多くの行をテーブルに動的に挿入するにはどうすればよいでしょうか? 髪をかきむしる!