Pelo que entendi é o segundo caso mesmo...

Acho que se vc criar uma nova conexão dentro do controller rola...

Tipo, depois de pegar os dados que vc quer do primeiro DB:


$dynamic_db = '$dbdriver://$username:$passw...@$hostname/$database';
$this->load->database($dynamic_db);



On 29-Apr-09, at 12:51 AM, Marcus Cavalcanti wrote:

Não entendi o que você quer.

O model não tem nada a ver com a conexão, ou melhor, quando você carrega um model, você já definiu qual conexão irá usar.

Você quer ter duas conexões com dois bancos diferentes e poder acessá-los? Ou você quer criar uma conexão dinâmica com os dados de outro banco de dados? Não entendi o que você precisa, seja mais objetivo.

[]s

--
Marcus Cavalcanti
21 9144-5068
www.marcuscavalcanti.net/blog


2009/4/28 Djalma Araújo | www.djalmaaraujo.com.br <[email protected] > Eu sei como se cria uma outra instancia, a quetao é que eu teria que primeiro buscar em um banco de dados pra depois criar uma OUTRA conexao.

Sera que eu chamando um model por padrao rola?


2009/4/28 Djalma Araújo | www.djalmaaraujo.com.br <[email protected] > Putz, eu acho que minha duvioda era justamente isso, e eu li a documentacao, so que eu nao sintetizei, vlw pela tentativa mas n me ajudou.

2009/4/28 Eric Saboia (Fortes Informatica) <[email protected] >

Hehaueheuahaeuhae, doeu o olho :D
----- Original Message -----
From: Marcus Cavalcanti
To: CodeIgniter Brasil
Sent: Tuesday, April 28, 2009 3:02 PM
Subject: Re: [CodeIgniter]Utilizando segunda conexão de banco de dados dinâmica

Manually Connecting

If only some of your pages require database connectivity you can manually connect to your database by adding this line of code in any function where it is needed, or in your class constructor to make the database available globally in that class.

$this->load->database();
If the above function does not contain any information in the first parameter it will connect to the group specified in your database config file. For most people, this is the preferred method of use.

Available Parameters

The database connection values, passed either as an array or a DSN string. TRUE/FALSE (boolean). Whether to return the connection ID (see Connecting to Multiple Databases below). TRUE/FALSE (boolean). Whether to enable the Active Record class. Set to TRUE by default.
Manually Connecting to a Database

The first parameter of this function can optionally be used to specify a particular database group from your config file, or you can even submit connection values for a database that is not specified in your config file. Examples:

To choose a specific group from your config file you can do this:

$this->load->database('group_name');
Where group_name is the name of the connection group from your config file.

To connect manually to a desired database you can pass an array of values:

$config['hostname'] = "localhost";
$config['username'] = "myusername";
$config['password'] = "mypassword";
$config['database'] = "mydatabase";
$config['dbdriver'] = "mysql";
$config['dbprefix'] = "";
$config['pconnect'] = FALSE;
$config['db_debug'] = TRUE;
$config['cache_on'] = FALSE;
$config['cachedir'] = "";
$config['char_set'] = "utf8";
$config['dbcollat'] = "utf8_general_ci";

$this->load->database($config);
For information on each of these values please see the configuration page.

Or you can submit your database values as a Data Source Name. DSNs must have this prototype:

$dsn = 'dbdriver://username:passw...@hostname/database';

$this->load->database($dsn);
To override default config values when connecting with a DSN string, add the config variables as a query string.

$dsn = 'dbdriver://username:passw...@hostname/database? char_set=utf8&dbcollat=utf8_general_ci&cache_on=true&cachedir=/path/ to/cache';

$this->load->database($dsn);
Connecting to Multiple Databases

If you need to connect to more than one database simultaneously you can do so as follows:

$DB1 = $this->load->database('group_one', TRUE);
$DB2 = $this->load->database('group_two', TRUE);
Note: Change the words "group_one" and "group_two" to the specific group names you are connecting to (or you can pass the connection values as indicated above).

By setting the second parameter to TRUE (boolean) the function will return the database object.

When you connect this way, you will use your object name to issue commands rather than the syntax used throughout this guide. In other words, rather than issuing commands with:

$this->db->query();
$this->db->result();
etc...

You will instead use:

$DB1->query();
$DB1->result();
etc...



--
Marcus Cavalcanti
21 9144-5068
www.marcuscavalcanti.net/blog


2009/4/28 Djalma Araújo | www.djalmaaraujo.com.br <[email protected] > Opa, quando eu configuro no database.php além da conexão default uma outra é blza. Sem broncas. Mas eu pergunto a vocês, qual seria a melhor solução para eessa conexão ser dinâmica, por exemplo, eu acessaria outro site remotamente. Então eu não posso ter fixo no database.php a conexão, pois ela poderá ser qualquer uma.

Alguém tem uma sugestão?



--
Atenciosamente,
Djalma Araújo
Consultor / Desenvolvedor WEB.
www.djalmaaraujo.com.br

_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br




_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br


_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br




--
Atenciosamente,
Djalma Araújo
Consultor / Desenvolvedor WEB.
www.djalmaaraujo.com.br



--
Atenciosamente,
Djalma Araújo
Consultor / Desenvolvedor WEB.
www.djalmaaraujo.com.br

_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br


_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

Responder a