2012-03-28 10 views
0

私は、ロールナンバー、名前、年齢などの学生の詳細で構成されるテーブルを持っています。今、私は出席した学生と、その日に出席していない生徒と、与えられたクラスを保管するためのテーブルを持っています。チェックリスト付きのフォームを使用し、学生の詳細表を使用して名前が自動的に表示されます。つまり、すべての名前の名前とロールの番号には、各名前にチェックボックスが表示されます。チェックされている場合は、特定の生徒がクラスに参加したことを意味し、チェックされていない場合は、出席していません。これらの詳細は、出席テーブルで更新される必要があります。どのようにPHPとMySQLを使用してそれを行うには?PHPを使用してMySQLに複数のチェックリストデータを格納する

+0

この説明は混乱します。いくつかのコードを投稿するか、少なくともより読みやすくしてください。 –

答えて

0

MySQLでは多対多の関係を使用します。

あなたが学生とデータベーステーブルを持っている、のような:

表クラス

  • 学生(プライマリー)
  • StudentName
  • StudentAge
  • (さらに詳細)

のように、彼らは参加できるとのクラスのためのデータベーステーブルを作成します。

表クラス

  • のClassID(プライマリー)
  • のClassName
  • ClassDate
  • (さらに詳細)

次に、多対多のテーブルliを作成しますKE:

表の出席

  • のClassID(プライマリー)
  • StudentID(プライマリー)

クラスに出席した学生を取得するには、次のクエリを実行します。

<?php 
    $lstrQuery = "SELECT `students`.* FROM `students` 
        INNER JOIN `attendances` ON `attendances`.`StudentID` = `students`.`StudentID` 
        AND `attendances`.`ClassID` = {YOUR_CLASS_ID} "; 
    $loResult = mysql_query($lstrQuery); 

    while($laRow = mysql_fetch_assoc($loResult)) 
    { 
     // do whatever you like 
    } 
?> 

これはあなたが気にしていたことですか?

関連する問題