Đang chuẩn bị nút TẢI XUỐNG, xin hãy chờ
Tải xuống
Pratique de MySQL et PHP- P55:Quand la première édition de ce livre est parue, en janvier 2001, la réputation de MySQL et de PHP était déjà bien établie. Ces deux outils étaient connus pour être fiables, performants, pratiques et bien adaptés à une utilisation très spécialisée : la production dynamique de pages HTML. | 248 Chapitre 6. Architecture du site le pattern MVC sont normalisées pour annuler l échappement qui a éventuellement été pratiqué suite au paramétrage à On de magic_quotes_gpc. On peut ensuite développer tout le reste du site en considérant que magic_quotes_gpc vaut Off. Il serait bien sûr plus facile de pouvoir changer la configuration au moment de l exécution mais ce n est pas possible pour cette directive. Il est probable qu elle sera supprimée en PHP 6. Notez enfin qu on utilise la fonction init_set pour fixer le paramètre display_errors. Sa valeur est déterminée par la constante DISPLAY_ERRORS définie dans le fichier Config.php qu il faut absolument placer à Off sur un site en production. 6.2.2 Le contrôleur frontal Le contrôleur frontal est une instance de la classe Frontal dont le rôle est de router la requête HTTP vers le contrôleur et l action appropriés. Comme d habitude avec l approche orientée-objet on peut se contenter d utiliser une classe sans connaître son implantation ou inspecter cette dernière pour se faire une idée de la manière dont les choses sont traitées. Pour satisfaire votre curiosité voici le code de la méthode execute dans Frontal.php ce fichier se trouve dans lib . function execute D abord on récupère les noms du contrôleur et de l action if i s S e t _GET controleur controleur ucfirst _GET controleur . Ctrl el se c o n t r o l e u r IndexCtrl if i s S e t _GET action action l c f i r s t _GET action el se action index Maintenant chargeons la classe chemin controleurs . DIRECTORY_SEPARATOR . controleur . .php if file_exists application . DIRECTORY_SEPARATOR . chemin require_once chemin else throw new Exception Le contrôleur b controleur b n existe pas On ins tancie un objet eval ctrl new controleur Il faut vérifier que l action existe if method_exists ctrl action 6.2 Structure d une application MVC contrôleurs et actions 249 throw new Exception L action b action b n existe pas Il Et pour finir il n y a plus qu à exécuter l action .