Aide POO

Aide POO - PHP - Programmation

Marsh Posté le 01-12-2007 à 00:01:25    

Bonjour tout le monde  :jap:  
Je vous ecrits car j'ai un petit soucis en programmation objet, et plus precisement, dans la logique.
Mon problème est simple, j'ai une classe User et une classe Pm (message privé quoi  :) ). J'ai un objet Pm en attribut dans ma classe User.Je n'ai aucun soucis pour afficher par exemple less infos du Pm en faisant dans User: $this->afficherPm();
En revanche, cette solution ne fonctionne que lorsque j'ai qu'une instance de PM possible dans User.
Si par exemple, je fais une requete SQL pour recuperer tout les PM qu'a recu un User, je ne comprend absolument pas comment gerer cette multiplicité dans ma classe User car l'objet PM qu'il contient ne concerne qu'un et un seul PM. (dsl j'explique vraiment mal).
Si vous avez des solutions à me proposer concernant la logique dans ce genre de problemes, ca serait vraiment cool de m'aider un peut :)

Reply

Marsh Posté le 01-12-2007 à 00:01:25   

Reply

Marsh Posté le 01-12-2007 à 01:48:25    

un array de PM ?


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 02-12-2007 à 00:44:35    

Oui un array me paraît approprié ici.
Pour la requête SQL enlève 'LIMIT 1' pour tous les récupérer.


---------------
jouez gratuitement au hanjie, picross
Reply

Marsh Posté le 02-12-2007 à 09:29:21    

Tu ne serais pas en train de chercher à recevoir tous les messages de l'utilisateur depuis la classe User en appelant la classe PM ?
 
Si c'est le cas, il ne te faut effectivement pas utiliser une fonction membre, mais plutôt une fonction statique, que tu appelera par PM::recupererMessages(monIDUtilisateur), par exemple.  
 
Mais à mon sens, le plus objet serait de créer une classe PMBox, qui servirait de boite aux lettres pour chaque utilisateur.
L'utilisateur utiliserait donc maPMBox->recupererMessages() qui lui retournerait un array ou encore for(maPMBox->begin();maPMBox->next(); maPMBox->end())
si tu te sens le courage d'implémenter une vraie méthode de récupération des messages (l'intéret étant que tu ne traites qu'un message à la fois dans ta classe User et que tu peux implémenter des méthodes dans PMBox pour modifier l'ordre de lecture des messages: par ancienneté, par ordre alphabétique ... )

Reply

Marsh Posté le 16-12-2007 à 20:08:03    

Merci beaucoup a tous et désolé pour cette réponse tardive.  
Je vais essayer ta méthode bapho13, qui me semble etre particulierement "propre". Encore merci :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed