Пакет обновлений с помощью CodeIgniter

Я пытаюсь создать небольшую открытую CMS с помощью CodeIgniter, и сейчас я работаю над системой категорий.

Я действительно застрял в этом, и после многих попыток и сообщений на форуме Я не решил это.

У меня есть 2 mySQL ТАБЛИЦЫ

  • # 1: ft_categories (перечислите все имена категорий в двух полях: category_name и id)
  • # 2: ft_upload_data (список всех сообщений с такими полями, как id, title, category, date и так далее)

Я хочу ОБНОВИТЬ свою ТАБЛИЦУ № 1 данными в форме редактирования имен категорий (эта форма заполняется входными данными в цикле для одновременного редактирования нескольких категорий)

Вот это:

if ($result != NULL) {
echo form_open('admin/update_categories/');
if (isset($result) && $result != NULL) {

    foreach ($result as $row) {
    echo form_input('category_name[]' ,$row->category_name);
    echo anchor("admin/delete_category/$row->category_name", 'Delete category');
    echo '<br /><br />';
    }

    echo '<br /><br />';
    echo form_submit('','Save');
    echo form_close();

} } else { echo 'NO categories'; }

Это форма с входными данными, полученными из БД, где вы можете редактировать имя.

Хорошо, теперь, когда вы редактируете имена категорий, вы переходите к КОНТРОЛЛЕРУ 'update_categories', чтобы выполнить запрос UPDATE

    function update_categories(){

    $i = 0;
    foreach ($this->input->post('category_name') as $cat)
        $data[$i++]['category_name'] = $cat;
        // The $i++ creates a multi-dimensional array to insert
        // multiple rows into the DB.

    $this->admin_model->update_categories($data);

}

Это получит кратные поля ввода для ОБНОВЛЕНИЯ БД. И теперь я перехожу к МОДЕЛИ, чтобы ОБНОВИТЬ данные в БД, и ВОТ ПРОБЛЕМА:

    function update_categories($data) {

    ?

Я не знаю, что я могу сделать, чтобы правильно обновить имена с помощью чего-то вроде insert_batch, но с UPDATE, потому что, хотя мне нужно ОБНОВИТЬ ТАБЛИЦА № 1, мне также НУЖНО обновить имя в поле ТАБЛИЦЫ № 2 Двойное ОБНОВЛЕНИЕ для 2 таблиц и 1 пакетное ОБНОВЛЕНИЕ в ТАБЛИЦЕ № 1

Очевидно, я попытался добавить еще одну ТАБЛИЦУ: ТАБЛИЦА № 3, которая получает идентификатор поля ТАБЛИЦА № 1 и сопоставляет его с идентификатором поля ТАБЛИЦА № 2, но я могу Не понимаю, как связать эти 3 таблицы.

Любая помощь будет очень признательна! Большое спасибо!! (извините за мой плохой английский)


Спасибо за ответ!

Хорошо, теперь у меня есть третья таблица. Я хотел бы получить 'category_name', чтобы показать это в 'сообщении'

У меня есть это:

    $this->db->order_by('rank', 'asc');

$this->db->select('*');
$this->db->from('ft_upload_data');
$this->db->join('ft_categories', 'assigned_categories.ft_categories_id = assigned_categories.ft_upload_data_id');

$query = $this->db->get();



return $query->result();

Но там говорится, что есть Неизвестный столбец «assign_categories.ft_categories_id» в «on clause»

(assign_categories - это моя третья ТАБЛИЦА с совпадающим идентификатором сообщения и идентификатором категории)

Есть идеи?

9
задан Dori 11 June 2011 в 09:03
поделиться