Bonjour à vous,
j'espère que vous avez passé un agréable dimanche ensoleillé car moi j'ai passé toute ma journée à essayer de résoudre un problème.
Alors j'ai 3 classes et je tente de les faire avec le modèle MVC:
Classe DataBaseModel:
Classe ConfigDataBase:
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 <?php class DataBaseModel { var $dataBase_model; function DataBaseModel($dataBase_model) { $this->dataBase_model=$dataBase_model; } function connexion() { $connexion = mysql_connect($this->dataBase_model->host, $this->dataBase_model->user, $this->dataBase_model->password); } function close_mysql() { mysql_close(); } } ?>
Classe DatabaseController:
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 class ConfigDataBase { var $host; var $user; var $password; var $databaseName; /* *Constructeur de ConfigDataBase *Entrées: @domaine,@Nom_Utilisateur,@Mot_de_Passe,@Nom_Base_Courante *Traitement: Construit l'objet de configuration de mysql *Sortie: Objet de type ConfigDataBase */ function ConfigDataBase($host,$user,$password,$databaseName) { $this->host=$host; $this->user=$user; $this->password=$password; $this->databaseName=$databaseName; } /* *Méthode verifConnect() *Entrées: Aucune *Traitement: Vérifie si on arrive à se connecter au serveur MySQL *Sortie: Soulève une execption si il y a une erreur */ function verifConnect() { $dataBase=new ConfigDataBase(); $connexion = mysql_connect($this->host, $this->user, $this->password) or die("ERREUR: Impossible de se connecter: Vérifier identifiant, mot de passe et le domaine."); echo 'OK: Connexion réussie'; mysql_close($connexion); } /* *Constructeur de ConfigDataBase *Entrées: Aucune *Traitement: Vérifie si on arrive à se connecter au serveur MySQL *Sortie: Soulève une execption si il y a une erreur */ function verifDataBaseName() { $dataBase=new ConfigDataBase(); $connexion = mysql_connect($this->host, $this->user, $this->password) or die("ERREUR: Impossible de se connecter: Vérifier identifiant, mot de passe et le domaine."); mysql_select_db($this->databaseName,$connexion) or die('ERREUR: Le nom de la base n\'existe pas'); mysql_close($connexion); } }
Mon problème dans la classe DatabaseController. en effet mon constructeur construit les 2 objets ConfigDataBase et DataBaseModel.
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 <?php require('ConfigDataBase.php'); require('DataBaseModel.php'); class DatabaseControler { function DatabaseControler() { $configDB=new ConfigDataBase("localhost","*****","*****","*****"); $db=new DataBaseModel($configDB); } } $contdb=new DatabaseControler(); $contdb->verifConnect(); ?>
Mais quand je fais ceci:
j'ai une magnifique erreur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $contdb=new DatabaseControler(); $contdb->verifConnect();
Fatal error: Call to undefined method DatabaseControler::verifConnect() in /var/www/es4/akro/database/DatabaseControler.php on line 17
Oui je pense que c'est normal qu'il y est cette erreur mais je suis fatigué donc je fais appel à vous pour m'aider un petit peu.
Merci a tous Bonne fin de journée
Partager