Флажок установить значение из БД - PullRequest
0 голосов
/ 23 ноября 2011

Таким образом, сценарий таков: у меня в настоящее время есть БД с ТВ-шоу с RSS-каналами.Таблица каналов (ТВ-шоу) имеет идентификатор, имя, сеть, канал, активный.Я настроил поле в таблице учетных записей, которое называется «Избранное», я подумал, что идентификаторы ТВ-шоу, разделенные запятыми, могут быть хорошей идеей, но я больше не уверен.

В настоящее время я ищу возможность реализовать контроллер в CIбудет смотреть на базу данных в поле избранного, например, если она была заполнена 104 149 150

Как я могу получить эти идентификаторы для передачи в представление, чтобы я мог установить значения для соответствующих шоу?

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

Представление в настоящее время выводит телепередачи в базу данных с флажком рядом с каждым показом. Как лучше всего настроить предпочтения пользователя для избранных?Чтобы я мог установить значения каждого флажка в соответствии с предпочтениями пользователя

Надеюсь, я объяснил, что я пытаюсь сделать хорошо,

Спасибо!

Ответы [ 2 ]

1 голос
/ 23 ноября 2011

Майк прав, вот пример использования CI:)

Clicky

1 голос
/ 23 ноября 2011

Вы можете загрузить представление и отправить ему переменные / параметры следующим образом:

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

EDIT: Чтобы сохранить избранное, я предлагаю создать новую таблицу («избранное»), которая содержит fav_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), следующий за запросом, называется привязкой запроса, используемой для безопасности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...