Bonjour,
Je suis en train de développer un site web et je rencontre un petit soucis avec mes classes PHP.
J'obtiens une erreur que ma variable $connexion n'est pas défini.
Voici le code
connexionBDD2.php:
class covoiturage.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?php $connexion = new mysqli('localhost', 'nom_user', ''); $connexion->select_db('nom_BDD') or die("erreur"); ?>
class profil.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 class covoiturage { private $AllCovoiturage = array(); function __construct() { } function Create() { include("../../connexion/connexionBDD2.php"); $AddCovoiturage = "INSERT INTO covoiturage(// Liste des paramètres ) VALUES (//Liste des paramètres)"; $reussi = $connexion->query($AddCovoiturage) or die ("Erreur creation "); // Boucle pour implémenter l'array AllCovoiturage if($reussi) echo "<script language='JavaScript'>alert('Votre trajet a bien été créé. Vous le retrouverez dans la section covoiturage ou dans votre profil.')</script>"; mysqli_close($connexion); return $this->AllCovoiturage; } // Plusieurs méthodes du même genre }
Le code est identique, un constructeur vide, une requete insert avec un return d'un array dans chaque fonction.
Et dans le code appelant :
Et là sur l'appel de la fonction RetourProfil, il me dit que ma variable $connexion de ma class n'est pas défini "error call member is non object" ou un message d'erreur de ce genre.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $Init = new covoiturage(); $P = new profil(); $tableau = $Init->Create(); $P = $Init->RetourProfil();
Par contre si je supprime la création de l'objet covoiturage() et la méthode appelé Create() ca fonctionne.
Il peut y avoir des conflits entre méthodes ? Pourquoi ma 2eme variable $connexion n'est pas défini ?
J'ai essayé de simplifié au maximum le code, j'espère que ca suffira.
Merci !!
Partager