Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3331 connectés 

 


 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  21  22  23  ..  62  63  64  65  66  67
Auteur Sujet :

Model View Controller (MVC) - Architecture des applications PHP

n°1555933
supermofo
Hello World !
Posté le 06-05-2007 à 10:42:23  profilanswer
 

Reprise du message précédent :
Ca a un nom ce genre d objet. On les trouve juste au dessus des objets qui gere les donnees.

mood
Publicité
Posté le 06-05-2007 à 10:42:23  profilanswer
 

n°1555938
skeye
Posté le 06-05-2007 à 11:07:39  profilanswer
 

Shinuza a écrit :

http://fr3.php.net/manual/fr/ref.funchand.php
 
C'est une page qui devrait figurer à mon sens sur le premier post, c'est pratiquement la base en php pour faire un truc correct en mvc


 
Je me suis jamais servi de ces fonctions et je vois pas le rapport avec un mvc.[:dawa]


---------------
Can't buy what I want because it's free -
n°1555939
Shinuza
This is unexecpected
Posté le 06-05-2007 à 11:19:08  profilanswer
 

call_user_func_array
function_exists/method_exists
 
J'utilise la première pour appeler une méthode proprement
J'utilise la seconde pour tester si une méthode existe, par exemple dans un controlleur, verifier que l'action existe
 
 [:sinclaire]  
 
Y'a aussi ça http://fr3.php.net/manual/fr/ref.classobj.php qui est pas mal, j'ai utilisé par exemple get_class pour créer une méthode génerique find_by_id qui lance une requête et qui récupère le nom de table par convention.


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1555945
skeye
Posté le 06-05-2007 à 11:58:28  profilanswer
 

Shinuza a écrit :

call_user_func_array
function_exists/method_exists
 
J'utilise la première pour appeler une méthode proprement
J'utilise la seconde pour tester si une méthode existe, par exemple dans un controlleur, verifier que l'action existe


 
c'est loin d'être indispensable...[:skeye]


---------------
Can't buy what I want because it's free -
n°1555948
Shinuza
This is unexecpected
Posté le 06-05-2007 à 12:07:30  profilanswer
 

skeye a écrit :

c'est loin d'être indispensable...[:skeye]


Bah si tu pouvais expliquer comment tu fais  :jap:


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1555949
skeye
Posté le 06-05-2007 à 12:15:03  profilanswer
 

Shinuza a écrit :

Bah si tu pouvais expliquer comment tu fais  :jap:


Je code de manière à n'appeler que des méthodes qui existent.[:pingouino]
Et le coup d'appeler une méthode proprement j'ai du mal à voir ce que tu veux vraiment dire par là, en fait...c'est quoi appeler une méthode salement?[:dawa]


---------------
Can't buy what I want because it's free -
n°1555951
Shinuza
This is unexecpected
Posté le 06-05-2007 à 12:29:30  profilanswer
 

skeye a écrit :

Je code de manière à n'appeler que des méthodes qui existent.[:pingouino]


 
 [:shinuza] Je parle spécifiquement pour le controller et l'action en fait.
 
Mettons que tu as un truc du style
 
http://www.monsite.com/articles/all
 
Ton controlleur c'est articles ok, et dedans t'as prévu une méthode all ( [:a_bon] ), si maintenant un utilisateur tape :
 
http://www.monsite.com/articles/nimportequoi
 
Tu vas pas t'amuser à lancer la méthode sans qu'elle existe, right?
 
Je vois pas d'autre manière que de trigger une erreur en env_test et renvoyer vers la method index du controlleur en env_prod  [:sinclaire]  
 

skeye a écrit :


Et le coup d'appeler une méthode proprement j'ai du mal à voir ce que tu veux vraiment dire par là, en fait...c'est quoi appeler une méthode salement?[:dawa]


 

Code :
  1. $this->controller->$action();

Ca c'est pas propre [:dawa]
 
Tout comme
 

Code :
  1. new $objet();


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1555953
naeh
Posté le 06-05-2007 à 12:31:34  profilanswer
 

le propre serait ?

n°1555954
_synapse_
Posté le 06-05-2007 à 12:32:06  profilanswer
 

P'tain la bande de pinailleurs sur ce topic, je plains vos collèges si du moins vous bossez  :sweat:

n°1555956
naeh
Posté le 06-05-2007 à 12:36:24  profilanswer
 

y'en a qui sont là pour apprendre :p

mood
Publicité
Posté le 06-05-2007 à 12:36:24  profilanswer
 

n°1555964
Shinuza
This is unexecpected
Posté le 06-05-2007 à 12:58:49  profilanswer
 

naeh a écrit :

le propre serait ?


 
J'ai fais ça, y'a peut être mieux, mais j'en sais rien
 

Code :
  1. function loadAction() {
  2.   if(method_exists($this,$this->params['action'])) {
  3.    call_user_func(array($this,$this->params['action']));
  4.   }
  5.   else {
  6.    $this->index();
  7.   }
  8. }


_synapse_ a écrit :

P'tain la bande de pinailleurs sur ce topic, je plains vos collèges si du moins vous bossez  :sweat:


 
 [:pingouino] Php c'est faillé, mal foutu par moment (souvent en fait), et carrément trop tolérant, je bosse et j'aime pas le boulot de merde et le rafistolage à l'arrache. Si y'a moyen de faire plus propre, autant le faire non  :heink:


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1555965
skeye
Posté le 06-05-2007 à 13:02:28  profilanswer
 

Shinuza a écrit :

[:shinuza] Je parle spécifiquement pour le controller et l'action en fait.
 
Mettons que tu as un truc du style
 
http://www.monsite.com/articles/all
 
Ton controlleur c'est articles ok, et dedans t'as prévu une méthode all ( [:a_bon] ), si maintenant un utilisateur tape :
 
http://www.monsite.com/articles/nimportequoi
 
Tu vas pas t'amuser à lancer la méthode sans qu'elle existe, right?


 
Ben non. Mais d'un autre coté, all c'est pas un méthode, pour moi.[:dawa]
C'est une requête/un message. Soit le controleur sait interpréter la requête, soit il sait la transmettre à un autre objet qui saura l'interpréter, soit il retournera une erreur (dans le style du DP chain of responsability).
 
Et ça répond à la suite, mes contrôleurs ont la même interface publique, et je n'ai donc pas ce genre de soucis.


---------------
Can't buy what I want because it's free -
n°1555968
naeh
Posté le 06-05-2007 à 13:13:34  profilanswer
 

Je reviens à mon exemple de blog :)
 
donc, j'ai mes classes user, message héritant de Object. Dans le MVC ce sont mes Modèles ?
dans les methodes de ces classes, j'ai les Add, Edit, Delete, elle reçoivent toutes des array contenant les param => valeurs.
 
mes question :
- dans ces méthodes j'ai le droit de faire de l'sql ? (genre Insert into, Update, Delete).
- c'est mon controlleur qui prépare, rempli les array fournis a ces méthodes ?
 
Merci :)

n°1555971
skeye
Posté le 06-05-2007 à 13:22:40  profilanswer
 

naeh a écrit :

Je reviens à mon exemple de blog :)

 

donc, j'ai mes classes user, message héritant de Object. Dans le MVC ce sont mes Modèles ?

 

Elle font partie du modèle, oui.

 
naeh a écrit :

dans les methodes de ces classes, j'ai les Add, Edit, Delete, elle reçoivent toutes des array contenant les param => valeurs.

 

mes question :
- dans ces méthodes j'ai le droit de faire de l'sql ? (genre Insert into, Update, Delete).
- c'est mon controlleur qui prépare, rempli les array fournis a ces méthodes ?

 

Merci :)

 

Le sql je le mettrais plutôt dans une couche d'abstraction d'accès à la base de données...
Ensuite je vois pas trop comment tu comptes les utiliser, tes méthodes...ce sont des méthodes statiques? :??:

 


Message édité par skeye le 06-05-2007 à 13:22:47

---------------
Can't buy what I want because it's free -
n°1555973
naeh
Posté le 06-05-2007 à 13:28:04  profilanswer
 

ben non, je ne pense pas.
 
en fait ce que je me dis c'est que le controlleur les appellera.
 
exemple :
 
je valide le formulaire pour envoyer un nouveau message :
- le controlleur reçoit les données, le met dans un array
- fait un $m = new Message()
- ensuite $m->Add(array(les données qu'il a deja préparé))
 
c'est pas bon comme ça ?

Message cité 1 fois
Message édité par naeh le 06-05-2007 à 13:28:46
n°1555974
skeye
Posté le 06-05-2007 à 13:30:19  profilanswer
 

naeh a écrit :

ben non, je ne pense pas.
 
en fait ce que je me dis c'est que le controlleur les appellera.
 
exemple :
 
je valide le formulaire pour envoyer un nouveau message :
- le controlleur reçoit les données, le met dans un array
- fait un $m = new Message()
- ensuite $m->Add(array(les données qu'il a deja préparé))
 
c'est pas bon comme ça ?


 
Pour quoi il ferait pas tout simplement $m = new Message(array(...)) [:autobot]


---------------
Can't buy what I want because it's free -
n°1555976
naeh
Posté le 06-05-2007 à 13:34:02  profilanswer
 

Alors je vais t'expliquer comment je vois la chose :
 
mon objet message je l'utilise en fait pour afficher mes message, donc chaque new Messag() doit avoir un $id en param donc $m = new Messag($id) et là j'ai tout ce qui tourne au tour du message, sauf que quand je l'appelle sans le $id, ben là il sélectionne aucun message (dans la BDD) cette appaelle ne sera fait qu'en cas de Add :)


Message édité par naeh le 06-05-2007 à 13:34:34
n°1555991
Shinuza
This is unexecpected
Posté le 06-05-2007 à 13:51:46  profilanswer
 

skeye a écrit :

Ben non. Mais d'un autre coté, all c'est pas un méthode, pour moi.[:dawa]
C'est une requête/un message. Soit le controleur sait interpréter la requête, soit il sait la transmettre à un autre objet qui saura l'interpréter, soit il retournera une erreur (dans le style du DP chain of responsability).
 
Et ça répond à la suite, mes contrôleurs ont la même interface publique, et je n'ai donc pas ce genre de soucis.


Ok, on fait pas vraiment la même chose en fait. Je me suis appuyé sur le modèle de Rails en fait.
 
Donc j'ai ça dans un de mes controlleurs :
 

Code :
  1. <?php
  2. class alaune extends ActiveController {
  3. var $articles;
  4. var $article;
  5. function index() {
  6.  $this->loadModel('actualite');
  7.  $this->articles = $this->model->find(array("all",array("ORDER"=>"id DESC","LIMIT"=>"0,3" ));
  8. }
  9. function lire() {
  10.  $this->loadModel('actualite');
  11.  $this->article = $this->model->find_by_id();
  12. }
  13. }
  14. ?>


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1556014
supermofo
Hello World !
Posté le 06-05-2007 à 15:06:59  profilanswer
 

Y te faut une fonction qui charge ce qu il faut shinuza. Histoire que pour chaque methode tu ais pas a redefinir l environement.

n°1556015
skeye
Posté le 06-05-2007 à 15:07:47  profilanswer
 

Grumpf. Que vient foutre du sql dans ton controleur?:o
 
Et pourquoi tu as des membres à la fois article et articles?[:autobot]


---------------
Can't buy what I want because it's free -
n°1556050
gizmo
Posté le 06-05-2007 à 17:13:57  profilanswer
 

Shinuza a écrit :

[:shinuza] Je parle spécifiquement pour le controller et l'action en fait.
 
Mettons que tu as un truc du style
 
http://www.monsite.com/articles/all
 
Ton controlleur c'est articles ok, et dedans t'as prévu une méthode all ( [:a_bon] ), si maintenant un utilisateur tape :
 
http://www.monsite.com/articles/nimportequoi
 
Tu vas pas t'amuser à lancer la méthode sans qu'elle existe, right?
 
Je vois pas d'autre manière que de trigger une erreur en env_test et renvoyer vers la method index du controlleur en env_prod  [:sinclaire]  
 
 
 

Code :
  1. $this->controller->$action();

Ca c'est pas propre [:dawa]
 
Tout comme
 

Code :
  1. new $objet();



 
Chez moi, les controlleurs et leurs actions sont dans une DB, comme ça, j'ai pas ce genre de risque...

n°1556072
supermofo
Hello World !
Posté le 06-05-2007 à 18:59:46  profilanswer
 

skeye a écrit :

Grumpf. Que vient foutre du sql dans ton controleur?  :o  

 

Et pourquoi tu as des membres à la fois article et articles?  [:autobot]  

 


   

Ya aucun probleme a faire ce qu il fait puisque son controller possede les modeles.

 
Citation :


Je vois pas d'autre manière que de trigger une erreur en env_test et renvoyer vers la method index du controlleur en env_prod

 

Il peut expliquer ?

Message cité 1 fois
Message édité par supermofo le 06-05-2007 à 19:03:34
n°1556101
Shinuza
This is unexecpected
Posté le 06-05-2007 à 19:31:15  profilanswer
 

skeye a écrit :

Grumpf. Que vient foutre du sql dans ton controleur?:o
 
Et pourquoi tu as des membres à la fois article et articles?[:autobot]


 
J'ai suivi le modèle de rails [:cosmoschtroumpf]
 

supermofo a écrit :

Ya aucun probleme a faire ce qu il fait puisque son controller possede les modeles.
 

Citation :


Je vois pas d'autre manière que de trigger une erreur en env_test et renvoyer vers la method index du controlleur en env_prod  


 
Il peut expliquer ?


Avec le listing que j'ai donné en haut :
 
Tu tapes dans l'url http://www.monsite.com/alaune/lirrrre
 

  • En environnement de test tu as le droit à une jolie erreur avec localisation de la ligne
  • En prod il te renvoie vers http://www.monsite.com/alaune/ (avec un message d'erreur une fois que j'aurais trouvé un équivalent à [:flash] sous rails) donc la méthode index() du controlleur alaune


Toujours en suivant le modèle de rails  :jap:  


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1556132
esox_ch
Posté le 06-05-2007 à 19:55:16  profilanswer
 

Shinuza a écrit :

J'ai suivi le modèle de rails [:cosmoschtroumpf]
 
 
Avec le listing que j'ai donné en haut :
 
Tu tapes dans l'url http://www.monsite.com/alaune/lirrrre
 

  • En environnement de test tu as le droit à une jolie erreur avec localisation de la ligne
  • En prod il te renvoie vers http://www.monsite.com/alaune/ (avec un message d'erreur une fois que j'aurais trouvé un équivalent à [:flash] sous rails) donc la méthode index() du controlleur alaune


Toujours en suivant le modèle de rails  :jap:


 
Moi j'aurais plutôt utilisé une fonctionnalité déjà implémentée dans apache qui est de l'envoyer vers une page prédefinie quand tu te prend une erreur 404 ... Mais bon si rails fait ça c'est que c'est sûrement la meilleure chose à faire et qu'il vaut même pas la peine de se demander si c'est adapter à ton cas


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1556136
Shinuza
This is unexecpected
Posté le 06-05-2007 à 19:57:51  profilanswer
 

Ouais c'est peut être une autre solution, ma méthode redirect_to gère les headers et les erreurs :D


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1556161
supermofo
Hello World !
Posté le 06-05-2007 à 20:20:38  profilanswer
 

Shinuza a écrit :

J'ai suivi le modèle de rails  [:cosmoschtroumpf]

 


Avec le listing que j'ai donné en haut :

 

Tu tapes dans l'url http://www.monsite.com/alaune/lirrrre

 


 

 

Ouais ok je vois. C du tout bon ;) J 'espere que t as pas voter Sarkozy :D

n°1556165
Shinuza
This is unexecpected
Posté le 06-05-2007 à 20:22:25  profilanswer
 

Citation :

Action sarkozy absente dans le controlleur vote


 
[:cosmoschtroumpf]


---------------
Mains power can kill, and it will hurt the entire time you’re dying from it.
n°1556166
supermofo
Hello World !
Posté le 06-05-2007 à 20:23:23  profilanswer
 

Hehe n1

n°1557202
AlphaZone
Posté le 09-05-2007 à 10:24:29  profilanswer
 

Bonjour,
 
Je suis en train de développer un site web et en tombant sur ce topic, j'y ai appris un tas de chose intéressante. J'ai donc revu la conception du site en me basant sur le design pattern MVC.
 
Partie Controler:
J'ai donc une interface Controler et des classes qui l'implémente (FrontControler, UserControler, etc.).
 
Partie Model:
J'ai une classe mère qui gère la connexion à la base de données et j'ai mes classes filles qui gère les données selon le modèle (User, News, etc.).
 
Partie View:
Affichage des données.
 
Bref.
 
J'ai réussi à mettre ça en place avec quelques tests. Là où je bloque, c'est que je ne sais pas comment gérer les parties protégé comme une partie d'administration par exemple.
 
Comment feriez-vous dans votre cas? Est-ce que quelqu'un aurait des exemples tout simple pour que je me fasse une idée ?
 
Je vous remercie d'une part pour la bonne idée d'avoir créé et enrichi ce topic et d'une autre part d'éclairer ma petite cervelle.
 
Tchuss

n°1557204
skeye
Posté le 09-05-2007 à 10:28:32  profilanswer
 

AlphaZone a écrit :

J'ai réussi à mettre ça en place avec quelques tests. Là où je bloque, c'est que je ne sais pas comment gérer les parties protégé comme une partie d'administration par exemple.
 
Comment feriez-vous dans votre cas? Est-ce que quelqu'un aurait des exemples tout simple pour que je me fasse une idée ?


Quel est ton soucis?
A priori, je dirais que le contrôleur va demander au modèle si l'utilisateur est autorisé à voir le contenu demandé, et en fonction de la réponse instancier la vue idoine...mais ce n'est p-e pas ce qui te bloque?


---------------
Can't buy what I want because it's free -
n°1557319
AlphaZone
Posté le 09-05-2007 à 13:09:43  profilanswer
 

skeye a écrit :

Quel est ton soucis?
A priori, je dirais que le contrôleur va demander au modèle si l'utilisateur est autorisé à voir le contenu demandé, et en fonction de la réponse instancier la vue idoine...mais ce n'est p-e pas ce qui te bloque?


Oui et non mais je pense que tu m'as donné une piste.
 
Si je fais ceci :

Code :
  1. class ExempleControler{
  2. public function run(){
  3.  switch($MA_VALEUR_X){
  4.   case 1:
  5.    include('models/auth.php');
  6.    include('views/auth.php');
  7.    $am = new AuthModel();
  8.    $av = new AuthView();
  9.    if ($am->login($log, $pwd)) {
  10.     // Partie privee
  11.    } else {
  12.     $av->error($am);
  13.    }
  14.   break;
  15.   case 2:
  16.   case 3:
  17.   // ETC.....
  18.  }
  19. }
  20. }


 
Est-ce que c'est "logiquement" correct ?

n°1557359
supermofo
Hello World !
Posté le 09-05-2007 à 14:22:02  profilanswer
 

Ouais bah way , du moment que t as rien d autre que des anonymes et un admin


---------------
Echange de 3000+ liens PR 3 -> 5, me pm urgent !
n°1557368
supermofo
Hello World !
Posté le 09-05-2007 à 14:37:34  profilanswer
 

Shinuza a écrit :

J'ai fais ça, y'a peut être mieux, mais j'en sais rien

 


 


  [:pingouino]  Php c'est faillé, mal foutu par moment (souvent en fait), et carrément trop tolérant, je bosse et j'aime pas le boulot de merde et le rafistolage à l'arrache. Si y'a moyen de faire plus propre, autant le faire non   :heink:

  

C est bon juste que si t as pas de params tu passes $this->$method(), cf Comments sur la Doc php pour call_user_func et call_user_func_array c encore plus propre.

 

Ensuite tu px wrapper ton action dans un Invoker d'action et l utiliser pour les appels.
Les plus : garder la pile d execution des fonctions, avoir des "chemins" d execution du programme differents, extension possible sur des rollback ( je dis bien possible ).

 

Par contre moi je cherche des exemples interessant sur la gestion des exceptions, parce ce que *tout* ce que j'ai pu lire actuellement consiste simplement a throw ou catch ... Le truc basique qui me fait plus chier pendant le dev qu autre chose.
Les gars se justifient : "mais tu px etendre tes exceptions ! "

 

A quoi bon si c pour avoir un juste le nom de l exception qui change ? Retrouver la classe qui lance l exception ?

 

Bref si quelqu un a des infos sur l ecriture de vraies bonnes exceptions, qu il me fasse signe .

 

Je desespere ...

Message cité 1 fois
Message édité par supermofo le 09-05-2007 à 20:48:13

---------------
Echange de 3000+ liens PR 3 -> 5, me pm urgent !
n°1557414
AlphaZone
Posté le 09-05-2007 à 15:36:31  profilanswer
 

supermofo a écrit :

Ouais bah way , du moment que t as rien d autre que des anonymes et un admin


J'ai des anonymes, des membres avec différents accès et un admin.

n°1557735
supermofo
Hello World !
Posté le 10-05-2007 à 06:48:06  profilanswer
 

AlphaZone a écrit :

Oui et non mais je pense que tu m'as donné une piste.

 

Si je fais ceci :

 

Est-ce que c'est "logiquement" correct ?

 

Vu comme ca tu m'excuseras, mais je crois pas qu on puisse deviner qu il y ait autre chose derriere l auth.

 

$MA_VALEUR_X correspond a une donnee de $_SESSION

 

case 1: Non loggue proceder a l auth par couple login | passwd (retour succes ou erreur)

 

case 2: l'auth est valide, on test le type d'user ?
case 3: idem

 

Ca implique N case pour N types d utilisateurs differents. Si tu veux mon avis ca sux fort, d'un point de vue design et d'un point de vue logique.

 

Voila ;)

 


Message édité par supermofo le 10-05-2007 à 06:51:41
n°1557800
AlphaZone
Posté le 10-05-2007 à 10:26:11  profilanswer
 

En faite, je voyais plutôt $MA_VALEUR_X définissant une catégorie ou une page. J'ai oublié de préciser, que les utilisateurs sont dans des groupes et que ces groupes donnent droits à l'accès ou non à certaines parties du site. Comme les forums avec les utilisateurs, membres vip, modérateurs, etc...
 
Quels conseils me peux-tu me donner ? Comment procéderais-tu ?

n°1557812
skeye
Posté le 10-05-2007 à 10:47:01  profilanswer
 

AlphaZone a écrit :

En faite, je voyais plutôt $MA_VALEUR_X définissant une catégorie ou une page. J'ai oublié de préciser, que les utilisateurs sont dans des groupes et que ces groupes donnent droits à l'accès ou non à certaines parties du site. Comme les forums avec les utilisateurs, membres vip, modérateurs, etc...
 
Quels conseils me peux-tu me donner ? Comment procéderais-tu ?


 
Instancier l'utilisateur, puis lui demander s'il a accès à la catégorie/page demandée.:D


---------------
Can't buy what I want because it's free -
n°1557843
omega2
Posté le 10-05-2007 à 11:20:30  profilanswer
 

supermofo a écrit :

A quoi bon si c pour avoir un juste le nom de l exception qui change ? Retrouver la classe qui lance l exception ?
 
Bref si quelqu un a des infos sur l ecriture de vraies bonnes exceptions, qu il me fasse signe .
 
Je desespere ...

Avec php5, tu peux faire de l'héritage avec les exceptions (telle exception à pour ancêtre telle autre exception) Ca permet de ne réagir qu'aux exceptions qui dérivent d'une exception donné et laisser les autres exceptions remonter plus haut.
 
Par exemple, si tu fais une exception générique sur les erreurs de base de donnée et une autre sur la modif du compte d'un utilisateur ainsi que plusieurs exceptions dérivé de ces deux là, alors tu pourras réagir d'une certaine maniére si c'est une erreur de bdd et d'une autre pour une erreur de saisie et ce sans avoir à te soucier de l'erreur exacte.
 
Je sais que zend utilise ce genre de systéme dans leur zend framework mais je n'ai pas de code simple à te proposer.

Message cité 1 fois
Message édité par omega2 le 10-05-2007 à 11:21:15
n°1557861
AlphaZone
Posté le 10-05-2007 à 11:30:50  profilanswer
 

skeye a écrit :

Instancier l'utilisateur, puis lui demander s'il a accès à la catégorie/page demandée.:D


 :sweat: Ca revient donc à faire ce que j'ai montré dans mon exemple ? Non ? :??:


Message édité par AlphaZone le 10-05-2007 à 11:31:33
n°1557867
skeye
Posté le 10-05-2007 à 11:36:12  profilanswer
 

Pas tout à fait.;)
Dans mon idée ça ressemblerait plutôt à ça, dans le controleur (en très gros hein):
 

Code :
  1. $user = new User(/* paramètres récupérés dans la session ou autre*/);
  2. $mapage = new Page(/* paramètres récupérés dans la session ou autre*/);
  3. if($user->hasAccess($mapage)){
  4. $view = new mapageview($user);
  5. }
  6. else{
  7. $view = new restrictedaccessview($user);
  8. }
  9. $view->print();


---------------
Can't buy what I want because it's free -
n°1557981
AlphaZone
Posté le 10-05-2007 à 13:13:51  profilanswer
 

Merci Skeye pour ton exemple. Je vais en prendre note.

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  21  22  23  ..  62  63  64  65  66  67

Aller à :
Ajouter une réponse
 

Sujets relatifs
Comment créer une architecture propre et fonctionelle...[Débutant] Webdesigner a besoin d'aide pour PHP
script PHP style explorateur windowsPHP et MS SQL
[PHP] envoi d'images qui se dimentionne et s'ajoute direct sur 1pageAfficher le temps utilisé pour générer une page PHP
[PHP] connexion bdd différente selon page locale ou sur serveur ?Afficher une image générée par un script PHP dans un PDF ?
Utilisation d'une variable en Flash depuis PHPErreur de forum PHP
Plus de sujets relatifs à : Model View Controller (MVC) - Architecture des applications PHP


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)