salut,
C'est MVC

Le principe du MVC est décrit dans pas mal de tuto au travers le net, il est possible de refaire un bout ici mais redondant.
Il s'agit d'un motif d'architecture logiciel, mais ce n'est pas forcément lié à la POO tu le faire en procédurale.
La POO le permet simplement quand on connait le principe mais ça le fait aussi autrement
Le principe du MVC est de séparer l'appli en trois couche quasi indépendante (elles peuvent fonctionner "sans les autres").
En simplifiant au maximum :
Donc trois couches :
- Le modèle, c'est la partie accès à la base de données, au fichier, bref a toutes sources de données.
- La vue qui affiche les données qu'on lui fournit.
- Le contrôleur qui est le cœur de la chose.
pour afficher un post de ton blog, tu peux avoir une fonction (disons displayOnePost ).
La fonction prend en paramètre les données que tu vas devoir afficher, par exemple, le titre, la date, le corps etc. etc.
Tu va donc avoir autant de paramètre que d'information à afficher. Avec un modèle objet tu passerais un objet juste un objet ...
par exemple
function displayOnePost($titre,$content) {
echo '<h2>',$titre,'</h2>';
echo $content;
}
Le modèle pour avoir le post
function getTileById($id) {
// requete, sgbd ou fichier pour retourner le titre
}
function getContentById($id){
// retourne le contenu correspondant à l'id.
}
en poo une méthode qui te retournerais un objet qui contient le tout.
le contrôleur il s'agit d'une fonciton qui prend en paramètre les "entrants", dans ton cas $_GET / $_POST et qui va utiliser le modèle, pour fournir les données à la vue à afficher.
exemple
// on imagine que pour afficher un post on dans l'url postid
function controler($get, $post) {
if(!empty($get['postid']) {
displayOnePost(getTileById($get['postid']), getContentById($get['postid'])) ;
}
}
ta page oueb
<html>
<head>...</title>
<body>
<?php
controler($_GET,$_POST);
?>
</body>
</html>
ceci est simplifié et explique le principe de ce que tu peux faire en procédurale.
Bien entendus c'est plus complexe, il faut penser au "routage" : comment orienter vers une vue ou un modèle (un modèle ne fait pas que fournir des données il mets à jour la source en y ajoutant, modifiant ou supprimant les données (voir SCRUD). Donc un modèle pourrait être une cible d'un formulaire.
Le choix de la vue est en fonction des paramètres d'url ou du formulaire une combinaison if / else if peux faire la chose mais c'est pas forcément élégant, il préférable d'adapter la chaîne de commandement pour ça
Bref un MVC c'est un modèle et il n'y pas une façon de le faire, à partir du moment ou tu sépares les trois couches tu as ton mvc. Le but est qu'il n'y ai pas de code "métier" dans la vue (en clair pas d'accès base, pas de règle de gestion si elle n'est pas liée à l'affichage).
le contrôleur n'as pas accès aux données directement il les demandes au modèle. Le controleur c'est à qui demander les données mais ne sais d'où elles viennent (SGBD, fichier, service web etc.). A la limite il peux initier une connexion sgbd qu'il fournit au modèle.
La vue n'a pas connaissance du modèle et modèle de la vue leur lien c'est le contrôleur.
Il existe un motif de conception qui fait "causer" modèle et vue : le MVVM.
L'avantage du MVC c'est que tu modifier chaque partie sans impacter les autres (pour peux que les méthodes des fonctions / méthodes ne change pas évidement).
tu veux passer ton ihm de simple html à du html, utiliser extjs, angular ou autre framework graphique pas de problème ça n'impacte que la vue.
Tu changes de base de données, idem seul le modèle change.
Je me répète, mais ma vu, ici, est simpliste. Je te conseil de lire plusieurs tuto sur le principe, de te faire ton opinion et de modifier petit à petit ton blog
@+
Il en faut peu pour être heureux ......