2012-10-18 44 views
1

我使用form_dropdown()和低於AA的問題:笨 - 發送一個查詢result_arry()的信息查看form_dropdown

形式的代碼是:

回聲form_dropdown($級,$ level_options, '1');

它的工作原理,當我使用

$level_options = array(
        '1' => 'Grade 6', 
        '2' => 'Grade 7' 
       ); 

而不是當我從控制器發送$數據[「水平」],查看

僅供參考,模型數據庫中檢索代碼:

public function getAllLevelNames() { 
    $query = $this->db->query("SELECT level_description from levels ORDER BY level_description"); 
    return $query->result_array(); 
} 

的問題

問題是我得到一個下拉選擇列表:

0 

Grade 6 

1 

Grade 7 

索引灰顯。

我該如何擺脫索引?

在此先感謝!

P.S.

我似乎有一種形式,現在工作與發送到視圖的數據['levels']。現在,我的視圖中的以下代碼似乎將「null」返回給我的控制器。任何想法爲什麼請?

$level = array(
       'name'  => 'level', 
       'id'   => 'level', 
       'value'  => '1', 
       'maxlength' => '50', 
       'size'  => '50', 
       'style'  => 'width:50%', 
      ); 


$level_options = $levels; 

echo "<p>Level: "; 
echo form_dropdown($level,$level_options,'1'); 

謝謝!

回答

0

您需要遍歷results_array並創建一個格式正確的新數組。

$query = $this->db->query("SELECT level_description from levels ORDER BY level_description"); 

$for_dropdown = array(); 
foreach ($query->result_array() as $row) { 
    $for_dropdown[$row->level_description] = $row->level_description; 
} 

return $for_dropdown; 

而且我不知道你的levels表是如何構成的,但通常你有某種形式的ID,這將是主鍵。如果你確實有這個問題,你可以將它包含在你的查詢中,而不是像這樣:

$query = $this->db->query("SELECT id, level_description from levels ORDER BY level_description"); 
... // other code 
    $for_dropdown[$row->id] = $row->level_description; 
+0

謝謝。我很樂意發送ID,並會嘗試看看是否會發生。理想情況下,我可以使用ID從下拉菜單中返回,但不知道如何執行此操作。 –

+0

我能夠在下拉列表中獲得正確的值,但我有一個新的下游問題... form_submit似乎發回「null」。不知道這是爲什麼? –

+0

你知道我的form_submit爲什麼返回空值嗎?我使用{$ c_level = $ this-> input-> post('course_level');}並在我的form_validation中,然後它在$ c_level變量中回到空 –