2016-02-05 1 views
-1

в моем приложении/config/database.php. У меня есть несколько соединений с базой данных. Теперь соединение с базой данных будет выполнено в соответствии с тем, в каком городе я зашел. Как за соединение с базой данных города будет создано успешно ... теперь то, что мне нужно сделать, - это внутри определенной функции, мне нужно подключить базу данных репликации (только для этой функции я подключил базу данных репликации) ... я подключу эту репликацию соединение с базой данных успешно, но проблема в том, что он будет подключаться для всего моего приложения. Мне нужно подключение базы данных репликации только для этой функции ... для остальной части контроллеров и функций мне нужно подключить базу данных, которую я подключил по городу ,отключить текущее подключение к базе данных в функции контроллера и подключить другую базу данных в codeigniter

+0

Какую версию CI вы используете? Просто чтобы проверить. – Vaishak

+0

i m using 2.1.4 версия CI – Hina

ответ

0

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

0

Это решит вашу проблему, я считаю. Благодаря этому вы можете открыть соединение с сервером репликации и получить доступ к обоим серверам БД.

Поместите код внутри функции, где хотите.

public function replication_test() 
{ 
     echo "<pre>"; 
     $query = $this->db->query("SELECT id FROM users ORDER BY id DESC LIMIT 0, 1"); 
     $result = $query->row_array(); 
     print_r($result); 
     $db_repli = $this->load->database('replication_db', true); 

     $query = $db_repli->query("SELECT id FROM repli_users ORDER BY id DESC LIMIT 0, 1"); 

     $result = $query->row_array(); 
     print_r($result); 

     // Close the DB 
     $db_repli->close(); 
} 
+0

Я пробовал это, но не работал .... Я тоже закрыл соединение, но все еще не работает ... – Hina

+0

Можете ли вы обновить свой вопрос с помощью фрагмента кода, который вы используете? – Vaishak

+0

$ this-> db3 = $ this-> load-> database ('dbrep', true); if ($ this-> db3) { echo "replication db connected"; } else { echo "replication db not connected"; } после этого мой код есть и, наконец, я закрыл соединение i.e $ this-> db3-> close(); – Hina