1

そのため、私と私の同僚は、レッスンの割り当てとしてライブラリデータベースを作成し、次に、誰かが行の挿入、行の削除、行の検索などのデータベース内の特定のタスクを実行できるhtmlデータベースインターフェイスを作成するように割り当てられました。

データベースを作成してインポートしましたが、問題はデータベースに要素を挿入することです。

たとえば、booksテーブルはauthorsテーブル(各テーブルの主キーはそれぞれISBNとauthors ID)と多対多の関係にあるため、DBに著者が含まれる本を挿入する場合はそれらは異なるテーブルにあるため、正確にそれを行う方法がわかりません。単一のフォームのデータを、異なる主キーを持つ複数のテーブルに配置する方法について混乱しています。

私たちはそのような例を見つけようとしてきましたが、役に立ちませんでした。

チュートリアルへのリンクなども大歓迎です。

サーバー側のコードはPHPです。

どうもありがとうございます。

4

2 に答える 2

1

フォーム変数を収集して、必要なSQLステートメントを作成するだけです。私はPHPの専門家ではないので、PHP用のmySQLプラグインの使用に精通しているだけです。

別のテーブルに追加したい住所部分のある個人フォームについて考えてみます。

 <form action="makePerson.php" method="POST">
    First Name: <input type="text" name="firstName"/>
    First Name: <input type="text" name="lastName"/>
    Address: <input type="text" name="address"/>
    <input type="submit"/>
 </form>

今私のスクリプト(これはテストされておらず、私のPHPは錆びています)

 $firstName = $_POST['firstName'];
 $lastName = $_POST['lastName'];
 $address = $_POST['address'];

 $id = generateId();

 $person_insert = "insert into person values (" . $id . ", " . $firstName . ", " . $lastName . ")";
 $address_insert = "insert into address values (" . $address . ", " . $id . ")";

 mysql_execute($person_insert);
 mysql_execute($address_insert);

それが一般的な考え方です。これは本番品質のコードではなく、単なる例であることに注意してください。

于 2012-06-04T16:55:52.670 に答える
1

私はあなたにいくつかの提案があります、

  1. サブジェクト名にドロップダウンボックスを使用し、サブジェクトテーブルを介して入力します。これにより、DBにあるサブジェクト名のみを選択できます。

  2. 書籍の詳細(表のほとんどすべての値と件名)を入力したら、手動でISBNを著者表に挿入します。

  3. 本のユーザーインターフェースでは、出版社名にドロップダウンボックスも使用します(多くの人は出版社コードを覚えていないため)。その後、ポストバックで、value="??"から価値の出版社コードをpivkできます。
    <select> <option value="Code1234">Sams Publisher</option> </select>

  4. 著者、出版社、本、件名の編集者フォームを同じページに追加すると、ユーザーが入力するにはフィールドが多すぎて混乱する可能性がありますが、これは単なる宿題なので、この点を無視して最善を尽くすことができます1ページでそれらを管理します。

サンプルライブラリDB: ここに画像の説明を入力してください
出典:

于 2012-06-04T17:12:48.767 に答える