Bonjour,
je débute en php5, et je rencontre un problème auquel je n'arrive pas à trouver de solutions.
Je vous explique:
J'ai deux classes: user.php et forum.php.
La classe user va me servir à créer des utilisateurs:
Dans la classe forum, je souhaite enregistrer un user entant qu'attribut:
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 <?php class user{ private $id; private $nom; private $prenom; private $login; // Constructeur de la classe. function user($id,$nom,$prenom,$login) { $this->id = $id; $this->nom = $nom; $this->prenom = $prenom; $this->login = $login; } function __construct(){ } // Méthode d'affichage de l'objet. function __tostring() { return 'user id: '.$this->id.'<br>'.'user nom: '.$this->nom.'<br>'.'user prenom: '.$this->prenom.'<br>'.'user login: '.$this->login.'<br>'; } } ?>
Comme vous pouvez le constater je met mon user en parametre de mon constructeur afin de l'initialiser.
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 forum{ private $name; private $user; // Constructeur de la classe. function __construct($name,user $user) { $this->name = $name; $this->user = $user; } // Méthode d'affichage de l'objet. function __tostring() { return 'forum: '.$this->name.'<br> user du forum: '.$this->user.'<br>'; } } ?>
Et voici ma page index.php, dans laquelle je fais mes créations:
Le problème est que cela ne m'affiche pas les informations du user qui a été créé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <?php function __autoload($class_name) { require_once $class_name . '.php'; } $user=new user(0,"monNom","monPrenom","monLogin"); $forum=new forum("forum1",$user); echo($forum); ?>
Pouvez vous m'expliquer pourquoi?
merci
Partager