Forum-webmaster
Technique - programmation => PHP / MySQL => Message commencé par: ts404 le le 26-04-2007 a 11:17:36

Titre: Détection de la base mysql connectée
Posté par: ts404 le le 26-04-2007 a 11:17:36

Bonjour à  tous et toutes ;D

Je cherche une méthode pour détecter la connection mysql en cours.

Je m'explique:

J'ai plusieurs bases de donnée, une principale, et une autre secondaire disons.

J'ai une table "newsletter" dans une base "base1", ainsi qu'une table "membres" dans une base "base2".

Pour mon script php, j'ai créé une fonction addnewsletter($email) qui permet d'inscrire l'email dans la table "newsletter" de la base "base1". J'aimerai donc détecter si la connection est faite sur "base1" ou sur "base2", pour pouvoir me déconnecter de "base2" si j'y suis connecté, et ensuite me reconnecter sur "base1" pour pouvoir inscrire le mail dans la table "newsletter".


Je pensais à  un script du genre


Code:


function addnewsletter($mail) {
if ($connecte != "base1") {
$connectionprecedente= "connection qui est différente de base1";
mysql_close();
mysql_connect(base1);
}
## mon script d'insertion du mail
mysql_connect($connectionprecedente);



mais je ne connais aucune fonction permettant de savoir dans quelle base la connection actuelle est faite...

Si vous avez une suggestion, hésitez pas

A rapidement


Titre: Re:Détection de la base mysql connectée
Posté par: killian le le 26-04-2007 a 22:10:11

Bonsoir, d'après ce que j'ai cru comprendre, tu veux juste choisir une autre base pour la meme connexion ?

Dans ce cas les mysql_close ne sont pas utiles.


Code:
$sql = mysql_pconnect($host,$user,$pass);


Lors de la selection de la base, tu peux définir une variable pour le nom de labase :


Code:
$base = "newsletter";
mysql_select_db($base,$sql);


Puis dans ta fonction, tu peux tester :


Code:
function addnewsletter($mail) {
if ($base != "base1") {
$anciennebase = $base;
$base="base1";
mysql_select_db($base,$sql);
}
## mon script d'insertion du mail
$base = $anciennebase;
mysql_select_db($base,$sql);
}


Ou quelquechose dans le genre.. je ne suis pas sûr d'avoir bien saisi ton problème.

A bientôt !

Titre: Re:Détection de la base mysql connectée
Posté par: ts404 le le 04-05-2007 a 12:17:19

Le problème est résolu,

J'ai effectivement spécifié dans une variable la base sur laquelle je vais me connecter (avant chaque connexion), puis je vérifie au besoin sur quelle base je suis connecté, pour pouvoir me déconnecter puis reconnecter sur la nouvelle base.



Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.