Page 1 sur 1

Connexion à deux base de données

Posté : 02 mai 2005, 12:27
par Manoman
Bonjour

Je dois travailler sur deux bases de données sur des serveurs différents.

Dans deux fichiers distincts je déclare la connexion à ces bases

Dans un autre fichier, une fonction effectue un test

Suivant le resultat je redirige sur deux fonctions différentes

La premiere est connectée à une base de données
La deuxieme se connecte à cette meme base puis a une deuxieme

Lorsque je souhaite ensuite me reconnecter à la premiere base un message d'erreur apparait

Pouvez vous m'aider ???

Merci d'avance

Posté : 02 mai 2005, 13:07
par Cyrano
Deux questions :
-1- Comment te connectes-tu : utilises-tu une classe objet ?
-2- Quelle est la teneur du message d'erreur : et si une ligne de code est indiquée, peut-on voir cette ligne ? (sans les mots de passe s'il y en a bien sur)

Posté : 02 mai 2005, 14:14
par Invité
Pour me connecter j'utilise deux fichiers construit sur ce modele
Je parviens à me connecter mais quand je veux me connecter à la base 1 apres m'etre connecté à la base 1 puis à la base 2 ce n'est plus possible

Voici le code de mon fichiers de connection

<?php
function gesterr_mysql_die($error = ""){
if (empty($error)){
$mysqlError = mysql_error(); //affect une variable avec l'erreur
if (!empty($mysqlError)){
echo "Réponse serveur SQL: ".$mysqlError;
}
}
else
echo "Réponse serveur SQL: ".$error;
echo "<br><a href=\"javascript:history.go(-1)\">BACK</a>";
exit;
return 1;
reprise($error);

}

function gesterr_connect_db(){
//parametre de connection serveur

//configuration
$host = "localhost";
$login = "root";
$base = "devis";
$password = "";

$db=mysql_connect($host,$login,$password) or gesterr_mysql_die();
mysql_select_db($base);

return $db;
}

?>

Le message d'erreur retourné est :

Fatal error: Cannot redeclare gesterr_mysql_die() (previously declared in c:\program files\easyphp1-7\www\devis\connexion\gesterr_db.inc.php:2) in c:\program files\easyphp1-7\www\devis\connexion\gesterr_db.inc.php on line 2

Posté : 02 mai 2005, 14:23
par Cyrano
Dans ton fichier gesterr_db.inc.php, tu dois avoir une ligne 2 qui doit ressembler à
include("ton_fichier_de_connexion.php");
Remplace le include par include_once(), ça devrait régler ton problème.

Signification : include_once() va vérifier si le fichier a déjà été inclu, si oui, il ne s'exécute pas, sinon, il va chercher le fichier, même chose pour require()/require_once()

Posté : 02 mai 2005, 14:35
par Invité
En fait le fichier qui s'appelle gesterr_db.inc.php est le fichier dont je me sert pour me connecter.

J'ai mis ce que tu m'as conseillé ("include_once")

J'ai l'impression que ca m'a oté une partie du probleme

Je m'explique:
Je n'ai plus d'erreur, mais c comme si php ne lisait plus ce qui lui pose probleme

Posté : 02 mai 2005, 14:39
par Cyrano
mais encore..... ? si toi tu as du mal à voir en étant sur place, imagine pour moi qui n'ai aucune idée du processus en cours... :-k

Posté : 02 mai 2005, 14:45
par Invité
Desolé je suis rarement clair

Je crois que tu m'as mis sur la voie

Je renvoye un message dans 5 minutes pour confirmer

Posté : 02 mai 2005, 14:49
par Invité
Merci enormément et je pese mes mots, je bloquais sur ce petit soucis croyant que c en générant mon pdf que ca ne passait pas

Ce qui n'allait pas en fait est qu'il fallait que je relance ma page, la recharger ne suffisait pas

Encore merci

Mano