Bonjour à tous,
Voici peu de temps que je me suis mis en-tête de lire des docs sur la structure MVC et la POO de php. Je ne vous cache pas que j'ai du mal à en cerner toutes les facettes bien qu'il me semble avoir compris le principe de l'OO pour la construction d'objet par le biais de class abstraite.
Ceci étant ma question porte sur l'architecture MVC pour laquelle j'ai bien distingué les trois parties composantes, mais des questions subsistent, notamment comment externaliser (je suis pas sur que ce terme existe) une requête sql et le traitement avec php dans une boucle du résultat de la requête.
Voila j'ai ce script procédural(view.message.php) mon modèle et ma vue pour l'instant fusionné:
En supposant que l'index (controleur) de mon site est comme ci-dessous et que le module demandé est le module message:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <table> <?php $rqt = mysql_query("SELECT * FROM matable"); while($tab = mysql_fecth_array($rqt)) { $id = $tab["id"]; $message = $tab["message"]; ?> <tr><td><?php echo $id; ?></td><td><?php echo $message; ?></td></tr> <?php } ?> </table>
Comment séparer ma vue qui pour moi est la table "<table>"(view.message.php) du traitement php(controleur) qui pour moi est la requête et la boucle while ?
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 if (!empty($_GET['module'])) { $module = dirname(__FILE__).'/modules/'.$_GET['module'].'/'; $action = (!empty($_GET['action'])) ? $_GET['action'].'.php' : 'index.php'; if (is_file($module.$action)) { include $module.$action; } else { include 'global/view.accueil.php'; } } else { include 'global/view.accueil.php'; }
Encore la j'ai fait simple c'est juste des lignes qui se mettent les unes en-dessous des autres, mais on peut même imaginer un tableau complexe avec des colonnes et des conditions pour le saut de ligne.
En espérant avoir été explicite, merci à tous pour vos réponses.![]()
Partager