2015-04-05 49 views
-1

我有一張3列的表格。首先是學生的名字。第二欄是一個下拉菜單,其中應該選擇從第一欄開始教這位學生的老師,這個下拉菜單中的其他值應該是其他老師,可以改變教師。第三欄是提交按鈕 - 保存更改(如果你已經改變了這位學生的老師)。我用"selected=selected",但它在所有行只選擇一個老師,不依賴於什麼是db.Here的我的觀點:如何從下拉菜單中顯示選定的值

foreach ($students_show as $row) 
{ 

?> 
<tr> 
<td> 
    <?php echo $row->username; 
</td> 
<?php 
echo "<select name = 'add_teacher[]' >"; 
    foreach($teachers_show as $row) 
    { 

     ?> 
     <option value= '$row->username ' 
     <?php echo $row->username == $row->username ? 'selected="selected"' : '' ?>><?php echo $row->username ; ?></option> 


    <?php 
    } 
    echo "</select>"; 
    ?> 
    </td> 

我的模式是:

public function stdents_show() 
    { 
     $this->db->select('*'); 
     $this->db->from('users'); 
     $this->db->where('role_id', '2'); 
     $result=$this->db->get(); 
      return $result->result(); 
    } 
     public function teacher_show() 
    { 

     $this->db->select('teacher_id, users.username'); 
     $this->db->from('teacher_conn'); 
     $this->db->distinct('teacher_id'); 
     $this->db->join('users', 'users.user_id=teacher_conn.teacher_id'); 

     $result=$this->db->get(); 
      return $result->result(); 
    } 
+0

這是笨? – CMPS 2015-04-05 14:30:42

+0

是的,它是CodeIgniter。 – 2015-04-05 14:34:28

回答

1

您使用$row爲學生和老師。 用這樣的方式:

foreach ($students_show as $student) 

foreach($teachers_show as $teacher) 

和比較應該是這樣的

<?php echo $teacher->username == $student->teahcer_name? 'selected="selected"' : '' ?>><?php echo $teacher->username ; ?></option> 
+0

我做到了:foreach($ students_show as $ student)和foreach($ teachers_show as $ teacher),但它們不相等:$ teacher-> username == $ student-> teahcer_name。它必須顯示那個研究這個學生的老師。我的數據庫表是:id,teacher_id,student_id。它們在一行中 - 就像在查詢中的地方一樣。但是如何在下拉菜單中使用它:$ this-> db-> where('teacher_id',$ this-> input-> post('teacher_id')); - 如果我在查詢中使用它,則不會顯示任何結果。 – 2015-04-05 20:57:15

相關問題