2016-06-12 2 views
0

Я включил 1 подключение к базе данных в своем PHP-файле. Файл, который подключается к базе данных, называется connect.php. Это успешно работает без ошибок. Когда я пытаюсь включить 2 подключения к базе данных в свой PHP-файл, это когда я сталкиваюсь с ошибками. Кажется, я могу подключиться только к одной базе данных за один раз, потому что подключено только одна из баз данных. Есть ли способ включить 2 подключения к базе данных в 1 файл?Как включить два подключения к базе данных?

Это то, что я прямо сейчас:

<?php 

    require "connect.php"; 
    require "informational-connect.php"; 

?> 

Это то, что включено в connect.php:

<?php 
    $db= new mysqli("localhost", "XXX", "XXX", "ARTICLES"); 

    if($db->connect_errno) 
    { 
     die("Error"); 
    } 


?> 

Это то, что включено в информационно-connect.php:

<?php 
    $db = new mysqli("localhost", "XXX", "XXX", "INFORMATION-DATA"); 

    if ($db->connect_errno) 
    { 
     echo die("Error"); 
    } 
?> 

Я использую MySQLi.

+0

Можете ли вы предоставить фрагмент кода в двух файлах? Также. SQL-часть из текущего файла. Редактируйте часть учетных данных, просто хотите быть уверенными в проблеме. –

+0

@SujeetSinha Просто обновил вопрос с помощью фрагментов – user2896120

+0

Используете ли вы те же переменные соединения в обоих файлах? – jophab

ответ

3

Для того, чтобы иметь различные соединения вы должны дать переменные СОЕДИНЕНИЕ разные имена

Кроме того, вам нужно только одну базу данных, чтобы иметь дело с, и, следовательно, только одно соединение

+0

Спасибо, работал как шарм! – user2896120

0

Выбор базы данных связан с ресурс связи. Поэтому вы можете выбрать один раз для каждого подключения.

Если вы вообще не вызываете mysql_select_db, то все ваши запросы должны указывать явные префиксы базы данных перед всеми таблицами, например. выберите * from db1.table ....

0

mysqli обеспечивает функциональность для подключения нескольких баз данных одновременно.

Но как одна переменная в файле может содержать два разных соединения ?

Для каждого подключения к базе данных вы должны использовать две разные переменные.

$Db1 = new mysqli($hostname,$username,$password,$db_name1); // соединение 1

$Db2 = new mysqli($hostname,$username,$password,$db_name2); // соединение 2

Смежные вопросы