Abaixo segue um exemplo de como utilizar duas conexões com banco de dados diferentes utilizando o Mysqli.


class MyClass{

 // constructor ...
 function __construct() {

$this->conn = new mysqli(servidor, usuario, senha, nome_do_db);
 $this->conn2 = new mysqli(servidor2, usuario2, senha2, nome_do_db2);

}

 function insertInTwoDataBases($var)     {

 $response1=$this-insertTable1($var);
 $response2=$this-insertTable2($var);

 if ($response1==true and $response2==true) {
 return true;
 } else {
 return false;
 }

}

 function insertTable1($var)     {

 $sql="INSERT INTO tabela ('campo') VALUES ('$var')";

 if ($result = $this->conn->query($sql)) {
 return true;
 } else {
 return false;
 }

 }

 function insertTable2($var)     {

 $sql="INSERT INTO tabela ('campo') VALUES ('$var')";

 if ($result = $this->conn2->query($sql)) {
 return true;
 } else {
 return false;
 }

 }

}

Na Classe acima fica demonstrado como é possivel criar duas conexões simultaneas com o 2 ou mais bancos de dados e utilizar dentro da classe.

Inicialmente em construct() criamos as 2 conexões (conn1 e conn2) com as duas bases que iremos utilizar.

Depois criamos as funções que irão executar ações nessas bases.

Utilizando a Função insertInTwoDataBases(‘teste’), ele irá adicionar o valor ‘teste’ em duas tabelas de bancos diferentes, caso seja necessário você pode utilizar as funções insertTable1 e insertTable2 separadamente ou em momentos distintos.

Agora você pode conectar com quantos bancos quiser e utilizar consultas, updates, excludes ou qualquer comando sql q desjar em qualquer um dos bancos.
Espero ter Ajudado.
Rafael Theodoro

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.


Warning: Use of undefined constant XML - assumed 'XML' (this will throw an Error in a future version of PHP) in /home/rafaeltheodoro/www/wp-content/plugins/wp-syntaxhighlighter/wp-syntaxhighlighter.php on line 1048