2012-04-16 100 views
0

試圖找出如何更好地編寫這段代碼。我想獲得名單成員名單,然後創建一個選擇視圖下拉列表中選擇下拉菜單中顯示的選項數組,並讓它有一個選項顯示「請選擇一個選項」。但是,如果從getAllRoster函數返回的內容是NULL,那麼如果沒有從查詢返回結果,那麼返回的結果是什麼。我應該如何處理我只想顯示空白選項的內容。默認選項並返回NULL

另外我需要考慮的是做一個函數來檢索該特定問題的所有盟友,然後在每個下拉列表的下拉列表中將該盟友顯示爲默認盟友。

控制器:

$rosterList = $this->bios->getAllRoster(); 
$allies = array(); 
$allies[''] = 'Please Select An Opion'; 
foreach ($rosterList AS $ally) 
{ 
    $allies[$ally->id] = $ally->rosterName; 
} 

查看:

<?php echo form_label('Ally 1', 'ally1'); ?> 
    <div> 
    <?php echo form_dropdown('ally1', $allies, ''); ?> 
</div> 
<?php echo form_label('Ally 2', 'ally2'); ?> 
    <div> 
    <?php echo form_dropdown('ally2', $allies, ''); ?> 
</div> 
<?php echo form_label('Ally 3', 'ally3'); ?> 
    <div> 
    <?php echo form_dropdown('ally3', $allies, ''); ?> 
</div> 

編輯:

我所想要做的是,如果盟國數組是空的,它需要顯示信息不摔跤手在數據庫中,但它反而給我在我的視圖文件中的錯誤。

控制器: pastebin.com/1Bf721zJ

查看:

<?php echo form_label('Ally 1', 'ally1'); ?> 
<div> 
     <?php if ($allies[''] == 'No Wrestlers In Database') { 
      echo $allies['']; 
     } 
     else { 
      echo form_dropdown('ally1', $allies, ''); 
     } ?> 
    </div> 

我也很好奇的東西。我有alliesList變量,它具有結果集的值或null,以及如果結果集的每個盟友都是每個下拉列表中的默認值,我想要執行的操作。

+1

你意識到你可以回顯

and
是吧?它與所有這些php標籤雜亂 – Jacxel 2012-04-16 14:49:33

+0

是的,但我是保持html的類型,因爲它是,除非我需要動態創建像循環內或類似的東西。 – 2012-04-16 14:51:04

+0

'foreach => hisOwn'我猜 – Jacxel 2012-04-16 14:53:47

回答

1

你可以做這樣的事情:

$rosterList = $this->bios->getAllRoster(); 
$allies = array(); 

if (empty($rosterList) { 
    $allies[] = 'nothing to display'; 
} 
else 
{ 
    $allies[] = 'Please Select An Option'; 
    foreach ($rosterList AS $ally) 
    { 
     $allies[$ally->id] = $ally->rosterName; 
    } 
} 

也是你的看法,如果你不想下來顯示下拉你可以把一個條件中其他顯示某事,例如:

<?php if ($allies[0] == 'nothing to display') { 
echo $allies[0] 
} 
else { 
    echo form_dropdown('ally1', $allies, ''); 
} ?> 
+0

非常好!然而,我的問題的第二部分是什麼我需要做的是做一個函數來檢索該成員的盟友,然後以某種方式將它們與正確順序中的每個下拉列表綁定,這意味着如果db中的ally1值爲1,那麼它顯示具有匹配值的該ID的選項。 – 2012-04-16 16:00:32

+0

如果您只想顯示如果你的意思是,你想要顯示三個不同的列表,你需要考慮一下你如何選擇你的$盟友,或者再次提出這個問題, – Stevo 2012-04-16 16:20:10

+0

其實當我這樣做的時候,它給了我視圖中未定義的變量盟友 – 2012-04-16 16:33:27

1

林不知道我完全理解你的問題,但如果即時通訊的權利不能你只是做

if $_GET['allies'] == "Please select an option"{ 
    $something = Null 
} 
else{ 
    $something = $_GET['allies'] 
} 

,並使用$something在那裏你會使用$_GET['allies']

+0

我應該提到我使用codeigniter – 2012-04-16 15:30:12

+0

我從來沒有使用codeIgnighter,所以我不知道如何相關 – Jacxel 2012-04-16 15:31:31