Выбор активной записи Codeigniter в нескольких базах данныхPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Выбор активной записи Codeigniter в нескольких базах данных

Сообщение Anonymous »

Мне нужна помощь, чтобы понять, как сделать выборку из таблиц в нескольких базах данных с помощью Active Record в Codeigniter.

Подробнее: у меня есть две базы данных; в первом есть таблица с именем пользователей со всей информацией о пользователе (имя, фамилия и т. д.); во второй базе данных есть таблица с именем кредит, в которой есть кредитная информация о каждом пользователе; user_id — это ключ, связывающий таблицы.

В модели контракта у меня есть:

public function __construct()
{
parent::__construct();
$this->rci_db = $this->load->database('dev', TRUE);
}


Запрос для выбора данных:

$this->db->select ("
$this->t_users.user_id,
$this->t_users.username,
$this->t_users.first_name,
$this->t_users.last_name,
$this->t_users.email,
$this->t_users.lastlogin,
$this->t_contributers.user_id AS credit
");
$this->db->from($this->t_users);
$this->db->join($this->rci_db.$this->t_contributers, "$this->t_contributers.user_id = $this->t_users.user_id");


Запрос не работает, и я получаю следующую ошибку:

Error Number: 1146

Table 'gavsit_data.rci_imgcontributers' doesn't exist

SELECT `users`.`user_id`, `users`.`username`, `users`.`first_name`, `users`.`last_name`, `users`.`email`, `users`.`lastlogin`, `rci_imgcontributers`.`user_id` AS `credit` FROM `users` JOIN `rci_imgcontributers` ON `rci_imgcontributers`.`user_id` = `users`.`user_id` ORDER BY `id` ASC

Filename: models/adm/Users_model.php


Большое спасибо за любую подсказку... Я действительно не знаю, как решить эту проблему.

РЕДАКТИРОВАТЬ:
Я отредактировал код, разделяющий запрос выбора, ошибка исчезла, но я не получил данных из второй БД:

$this->db->select ("
$this->t_users.id,
$this->t_users.username,
$this->t_users.first_name,
$this->t_users.last_name,
$this->t_users.email,
$this->t_users.last_login,
$this->t_users.active
");
$this->rci_db->select("
$this->t_contributers.user_id,
$this->t_contributers.cbtid
");
$this->db->from($this->t_users);
$this->rci_db->join("$this->t_contributers", "$this->t_contributers.user_id = $this->db.$this->t_users.id", 'left');


Подробнее здесь: https://stackoverflow.com/questions/483 ... -databases
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»