Ecrire et lire dans 2 bases differentes

Mammouth du PHP | 1339 Messages

21 mars 2010, 23:22

Bonjour,

Je cherche une classe ou un exemple avec mysql_db_connect() et mysql_query() pour pouvoir ecrire et lire des informations dans 2 bases differentes.

Merci,

Elie
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

22 mars 2010, 01:23

Bonjour,

En fait il faut utiliser le paramètre "link_identifier" qui est optionnel sur quasiment toutes les fonctions mysql_*

Voici un exemple :
// Connexion au 1er serveur
$connect_bdd1 = mysql_connect("serveur", "login", "pass");
mysql_select_db("nom_de_ta_bdd1", $connect_bdd1);

// Connexion au 2ème serveur
$connect_bdd2 = mysql_connect("serveur2", "login", "pass");
mysql_select_db("nom_de_ta_bdd2", $connect_bdd2);


// Requête sur la bdd1 :
mysql_query("SELECT * FROM table", $connect_bdd1);

// Requête sur la bdd2 :
mysql_query("SELECT * FROM table", $connect_bdd2);
Quand tout le reste a échoué, lisez le mode d'emploi...

Mammouth du PHP | 1339 Messages

22 mars 2010, 19:00

C'est ce que j'ai essayé de faire ... (Sous EasyPHP)

Le probleme c'est que peut importe le link, il me fait l'action en fonction du dernier mysql_select_db qu'il trouve.
	
// Connexion à la base	
	$db_read = mysql_connect('localhost', 'root', ''); 
	mysql_select_db('src_read', $db_read);
	
	$db_write = mysql_connect('localhost', 'root', ''); 
	mysql_select_db('src_write', $db_write);
	$sql = ;
	$req = mysql_query("SELECT * FROM tbl_membre", $db_read);
	print_r(mysql_fetch_array($req));
Me liste les infos contenues dans la base 'src_write'
Bon sinon tu me fais un message privé et on se fait un TeamViewer

devlop78
Invité n'ayant pas de compte PHPfrance

25 mars 2010, 02:16

Je ne sais pas. Tout ce que tu peux éventuellement essayé de faire, mais j'espère qu'une VRAIE solution arrivera, c'est de changer de bdd autant de fois que nécessaire. C'est du bidouillage, mais si ton truc est urgent, ça peut te dépanner.

La réponse m'intéresse aussi (mais c'est vrai que ça devrait fonctionner).