2011-11-23 2 views
0

시나리오는 다음과 같습니다. 현재 RSS 피드가있는 TV 프로그램이있는 DB가 있습니다. 피드 (TV 프로그램) 테이블에는 ID, 이름, 네트워크, 피드, 활성이 있습니다. 즐겨 찾기라는 계정 테이블에 필드를 설정 했으므로 TV 쇼의 쉼표로 분리 된 ID가 좋은 생각일지도 모른다고 생각했지만 더 이상 확실하지 않습니다.DB의 체크 박스 설정 값

나는 현재 내가 때문에보기에 전송하는 ID의의를 얻을 수있는 방법이 104,149,150

가득 경우 예를 들어, 즐겨 찾기 필드에 DB 볼 것이다 CI에서 컨트롤러를 구현하기 위해 찾고 있어요 각 쇼의 값을 설정할 수 있습니까?

<?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 } ?> 

뷰는 현재 나 즐겨 찾기에 대한 사용자 환경 설정을위한 가장 좋은 방법은 무엇인가, TV에 다음 각 쇼에 체크 박스가 데이터베이스에 표시 출력? 나는 사용자 선호도 나는 내가 잘하려고 무엇을 설명했다 희망

,

감사에 따라 각 체크 박스의 값을 설정할 수 있도록!

+0

* :) CI를 사용하는 예입니다 * "나는 ... 쉼표로 구분 생각했다". 바로 거기에서 너를 막을 게. – 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);?> /> 

이것은 당신이 컨트롤러에 $params['favorites'] 같이 보일 것이다 $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

DB에서 각 체크 박스로 ID와 일치시키는 방법을 모릅니다. – viperfx

+0

편집을 참조하십시오 – Mike

+0

감사합니다. 체크 박스의 코드를 설명해 주시겠습니까? – viperfx