2011-11-23 127 views
0

所以情景是這樣的: 我目前有一個數據庫與RSS源的電視節目。 供稿(電視節目)表具有ID,名稱,網絡,供稿,活動。 我在帳戶表中設置了一個名爲收藏夾的字段,我認爲逗號分隔ID的電視節目可能是一個好主意,但我不知道了。從數據庫複選框設置值

我目前正在實施中的CI一個控制器,將着眼於DB在收藏領域,比如,它充滿了104149150

我怎樣才能得到這些ID的轉移到視圖中,所以我可以將值設置爲相應的Show?

<?php foreach ($shows as $show) { ?> 

      <div class="grid_1"> 
       <? $data = array(
    'name'  => $show['name'], 
    'id'   => $show['id'], 
    'value'  => $show['name'], 
    'checked'  => FALSE, 
    ); 

echo form_checkbox($data); ?> 

      </div> 

      <div class="item"><?=form_label($show['name']);?></div> 

         <?php } ?> 

視圖當前輸出電視節目與旁邊的複選框每個節目的數據庫,什麼是我設置的用戶偏好收藏的最佳方式是什麼?所以,我可以根據用戶的喜好

我希望我解釋什麼,我試圖做的很好,

由於設置每個複選框的值!

+0

*一個例子: 「我想以逗號分隔的......」 *。讓我在那裏阻止你 – Phil

+0

那麼我該如何處理它? – viperfx

回答

1

您可以加載一個查看和發送變量/參數,它是這樣:

$params['data'] = array(1 => 'hello'); 
$this->load->view('path/view.php', $params); 

編輯: 收藏夾保存,我建議創建一個新表(「最愛」),它包含一個favorite_id ,user_id,show_id ..也許添加一個日期,也許還有其他的東西。

在節目頁面,在這裏的複選框居住,你可以做到以下幾點:

<input type="checkbox" <?=(in_array(SHOW_ID, $favorites) ? 'checked' : null);?> /> 

這意味着你必須寄過來叫$favorites數組,它看起來像$params['favorites']在你的控制器。

的查詢來獲取收藏夾會是這個樣子:

$q = $this->db->query('SELECT show_id FROM favorites WHERE user_id=?', array($user_id)); 
$params['favorites'] = $q->result_array(); 

array($user_id)查詢以下稱爲查詢綁定,用於安全。

+0

不知道如何將它與數據庫中的ID匹配到每個複選框。 – viperfx

+0

請參閱編輯請 – Mike

+0

謝謝,請您在複選框中解釋代碼。 – viperfx

1

邁克是正確的,這裏是使用CI :)

Clicky