Php undefined variable

Fermé
toto - 2 janv. 2013 à 17:05
 Utilisateur anonyme - 2 janv. 2013 à 22:01
Bonjour,

j'ai utilisé une fonction includes pour inclure le fichier qui me connectera a ma bdd,
function connect_base(){
$PARAM_hote = 'localhost';
$PARAM_port = '3306';
$PARAM_nom_bd = 'website2';
$PARAM_utilisateur = 'root';
$PARAM_mot_passe = '';
$ee = 4;
try {
$connexion = new PDO('mysql:host=' . $PARAM_hote . ';port=' . $PARAM_port . ';dbname=' . $PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
} catch (PDOException $e) {
$error[] = "Connexion Ãf©chouÃf©e : " . $e->getMessage();
}




j'appelle donc ma fonction dans index en dessous de mon include, mais lorsque que je lance ma page, il y a marqué de la variable connexion n'est pas definis or via includes les variable se transmettent! Je ne sais pas comment faire pour resoudre ce probleme puisque j'ai absolument besoin de passer par une fonction include!

Je vous remercie par avance de votre aide!

2 réponses

Heliotte Messages postés 1491 Date d'inscription vendredi 26 octobre 2012 Statut Membre Dernière intervention 28 janvier 2013 92
2 janv. 2013 à 20:49
Bonsoir toto,

Veuillez déposé votre fichier index et include sur un site de stockage, tel que www.cjoint.com et nous donner le lien dans votre prochain message.

Attention toutefois à modifier/supprimer les données sensibles !
0
Bonjour

Les variables se transmettent bien entre modules appelant et inclus, mais les variables locales aux fonctions restent inconnues hors des fonctions.
Si tu veux utiliser ta variable $connexion en dehors de ta fonction connect_base, il faut la déclarer global :

function connect_base(){ 
global $connexion; 
$PARAM_hote = 'localhost'; 
...
$connexion = new PDO('mysql:host=' . $PARAM_hote . ';port=' . $PARAM_port . ';dbname=' . $PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);  
...
0