2016-12-01 18 views
0

最初の小さなPHP mysqlプロジェクトとして、私はレッスンの記録をギター教師として保管するためのWebアプリケーションを作成しました。私は新しい学生を加えるためのフォームを作った。レッスンごとにレッスンの内容について別の形でメモを取っている。グループに学生を追加する

レッスンは個別です。同僚はこのシステムを使いたいと思っていますが、彼のレッスンは個人ではありません。彼は3人または4人の学生のグループを持っています。

私は新しいテーブル 'groups'を作成しました。これは新しいグループを追加するためのフォームで、学生テーブルに 'group_id'という行が追加されました。私のstudent_updateページでは、学生をグループに追加する選択オプションを追加したいと思います。

これはstudent_updateページのコードです:

<?php 
    $q = "SELECT * FROM students WHERE uid = '$user[uid]' ORDER BY st_last ASC";//enkel velden ophalen van uid in kwestie 
    $r = mysqli_query($dbc, $q); 

    if (mysqli_num_rows($r) > 0) { 

     echo "<p>Om gegevens te wijzigen of aan te vullen kunt u gewoon in het desbetreffende veld typen en vervolgens op 'update' klikken.</p></br></br> 

       <table class='table'> 
       <thead> 
        <tr> 
         <th>Naam</th> 
         <th>Voornaam</th> 
         <th>Graad</th> 
         <th>Telefoon</th> 
         <th>Gsm</th> 
         <th>Email</th> 
         <th>Groep</th> 
        </tr> 
       </thead>"; 

      while($student_list = mysqli_fetch_assoc($r)) { ?> 

     <tbody> 
     <form action="" method="POST" role="form"> 
     <tr> 
    <input type="hidden" value="<?php echo $student_list['sid']?>" name="sid" /> 
     <td width="8%"><input type="text" class="form-control" name="st_last" value="<?php echo $student_list['st_last']; ?>" /></td> 
     <td width="8%"><input type="text" class="form-control" name="st_first" value="<?php echo $student_list['st_first']; ?>"/></td> 
     <td width="3%"><input type="text" class="form-control" name="graad" value="<?php echo $student_list['graad']; ?>"/></td> 
     <td width="10%"><input type="text" class="form-control" name="vaste_telefoon" value="<?php echo $student_list['vaste_telefoon']; ?>"/></td> 
     <td width="10%"><input type="text" class="form-control" name="gsm" value="<?php echo $student_list['gsm']; ?>"/></td> 
     <td width="12%"><input type="text" class="form-control" name="email" value="<?php echo $student_list['email']; ?>"/></td> 
     <td width="11%"><div class="form-group"> 


      <select class="form-control" name="groep" id="groep"> 

       <option value="<>"></option> 

<?php 
    $q2 = "SELECT * FROM Groepen ORDER BY groepsnaam ASC"; 
    $r2 = mysqli_query($dbc, $q2); 

    while($groep_list = mysqli_fetch_assoc($r2)) { 
?> 

        <option value="<?php echo $groep_list['groep_id']; ?>"><?php echo $groep_list['groepsnaam']; ?></option> 
<?php } ?> 

      </select> 

     </div></td> 
     <td width="10%"> <div class="btn-group" role="group" aria-label="..."> 

      <button type="submit" name="updatell" class="btn btn-warning">Update</button> 
      <button type="submit" name="deletell" class="btn btn-danger">Delete</button></td> 
    </tr> 
    </form> 
    </tbody> 

<?php } } 

else { 
    echo "U hebt nog geen leerlingen toegevoegd."; 
} 

?> </table> 

および更新のために:私はグループフィールドを追加するまで

<?php 

    if(isset($_POST['updatell'])) { 

     $qupdatestudent = "UPDATE students SET st_last='$_POST[st_last]', st_first='$_POST[st_first]', groep='$_POST[groep_id]', graad='$_POST[graad]', vaste_telefoon='$_POST[vaste_telefoon]', gsm='$_POST[gsm]', email='$_POST[email]' WHERE sid='$_POST[sid]'"; 
     $r2 = mysqli_query($dbc, $qupdatestudent); 

    } 

    if(isset($_POST['deletell'])) { 

     $deletestudent = "DELETE FROM students WHERE sid='$_POST[sid]'"; 
     $r3 = mysqli_query($dbc, $deletestudent); 
    } 
?> 

すべてがうまく働きました。私はグループを選択し、更新をヒットした場合、私は次のエラーを取得する:

お知らせ:未定義のインデックス:ライン上の/Applications/XAMPP/xamppfiles/htdocs/dummie/backend/leerlingenlijst.phpでgroep_id 91

+2

ドロップダウンメニューの名前は 'groep'で、groep_id'ではありません。' $ _POST ['groep_id'];は決して存在しません。または私はそれを間違って読んでいますか? – Loko

+0

それは本当に問題でした。どうもありがとう! –

答えて

1

あなたをドロップダウンメニューの名前はgroepで、groep_idではありません。だから$_POST['groep_id'];は存在しません。

関連する問題