Différences entre HTML et PHP
Ce que je vais vous apprendre maintenant, ce n'est pas très compliqué,
et pourtant beaucoup de gens se lancent dans le PHP sans le savoir !
Croyez-moi : si vous faites l'effort de comprendre comment ça marche
(ça vous prendra 10 minutes), non seulement vous allez gagner beaucoup
de temps ensuite, mais en plus vous comprendrez ce que vous ferez. Et ça, ça n'a pas de prix croyez-moi
De quoi je vais vous parler ? Je vais vous expliquer ce qui se passe
exactement quand un visiteur veut aller sur votre site web. Il tape
l'adresse ok, mais ensuite ? La page s'affiche, d'accord, mais
entre-temps que s'est-il passé ?
Ca c'est vraiment important, parce qu'en HTML et en PHP ça ne fonctionne pas vraiment pareil.
Il y a une notion fondamentale à connaître : les relations entre le
client et le serveur. Quoi "beârk" ? Non non, il n'y a rien de sorcier
là-dedans !
Vous voyez ? C'est en fait très simple.
Pour ceux qui n'auraient pas tout bien compris, voici un exemple...
Imaginez un restaurant. Vous rentrez dedans, vous êtes le client. Vous commandez un Couscous Royal (arf j'ai faim ). Le cuisinier, lui, c'est le serveur : vous lui avez demandé tel plat, il vous le livre.
Dès qu'un autre client se présente et demande un autre plat, le
cuisinier le lui donne. Et il travaille ainsi inlassablement tout le
temps.
Eh bien c'est pareil sur Internet : le serveur est un ordinateur qui
envoie des pages web aux clients qui le lui demandent. Et il travaille
sans arrêt comme un forcené.
Bien, maintenant que vous avez compris ça, je vais vous montrer le
petit plus qui fait toute la différence entre une page HTML et une page
PHP.
Avant : en HTML
Je vous rappelle qu'une page HTML possède l'extension .html, comme exemple.html
Je ne vais pas entrer dans les détails, mais en gros voici comment ça fonctionne pour une page HTML :
Il y a 2 étapes :
Tout ça se passe très poliment bien entendu
Le client voulait consulter la page vacances.html sur un site web : il
l'a demandée au serveur qui gère ce site, et le serveur lui a envoyé la
page que le client voulait. La page s'affiche alors sur l'écran du
client, sous ses yeux ébahis
Cela se passe à chaque fois que vous consultez une page HTML. Mais qu'est-ce qui peut bien changer avec PHP ?
Maintenant : en PHP
Il y a une étape qui vient s'ajouter entre les deux : la page PHP est
générée par le serveur avant l'envoi. Schématiquement ça donne ça :
Voyons à nouveau les étapes :
Ce que je vais vous apprendre maintenant, ce n'est pas très compliqué,
et pourtant beaucoup de gens se lancent dans le PHP sans le savoir !
Croyez-moi : si vous faites l'effort de comprendre comment ça marche
(ça vous prendra 10 minutes), non seulement vous allez gagner beaucoup
de temps ensuite, mais en plus vous comprendrez ce que vous ferez. Et ça, ça n'a pas de prix croyez-moi
De quoi je vais vous parler ? Je vais vous expliquer ce qui se passe
exactement quand un visiteur veut aller sur votre site web. Il tape
l'adresse ok, mais ensuite ? La page s'affiche, d'accord, mais
entre-temps que s'est-il passé ?
Ca c'est vraiment important, parce qu'en HTML et en PHP ça ne fonctionne pas vraiment pareil.
Il y a une notion fondamentale à connaître : les relations entre le
client et le serveur. Quoi "beârk" ? Non non, il n'y a rien de sorcier
là-dedans !
- Le client : celui qu'on appelle "le client", c'est vous
. C'est vous qui êtes tranquille pépère installé devant votre
ordinateur, et qui demandez à voir une page web. Tous les visiteurs
d'un site web sont des clients. On va représenter l'ordinateur du
client par cette machine :
- Le serveur
: il n'y en a qu'un seul. Le serveur, c'est une sorte de gros
ordinateur tout le temps connecté à Internet (avec une connexion très
rapide). Cet ordinateur est installé quelque part dans le monde, il est
tout le temps allumé, et personne n'y touche. Il travaille 24h/24, et
ne s'occupe que de distribuer votre site web. En d'autres termes,
personne ne joue dessus
Sa fonction ? Il contient votre site web sur son disque dur, et dès
qu'un client demande à voir une page web, il la lui envoie. Pour
représenter le serveur, je vais utiliser cette machine (notez qu'en
général le serveur n'a pas d'écran : ça ne sert à rien puisque personne
ne travaille dessus) :
Vous voyez ? C'est en fait très simple.
Pour ceux qui n'auraient pas tout bien compris, voici un exemple...
Imaginez un restaurant. Vous rentrez dedans, vous êtes le client. Vous commandez un Couscous Royal (arf j'ai faim ). Le cuisinier, lui, c'est le serveur : vous lui avez demandé tel plat, il vous le livre.
Dès qu'un autre client se présente et demande un autre plat, le
cuisinier le lui donne. Et il travaille ainsi inlassablement tout le
temps.
Eh bien c'est pareil sur Internet : le serveur est un ordinateur qui
envoie des pages web aux clients qui le lui demandent. Et il travaille
sans arrêt comme un forcené.
Bien, maintenant que vous avez compris ça, je vais vous montrer le
petit plus qui fait toute la différence entre une page HTML et une page
PHP.
Avant : en HTML
Je vous rappelle qu'une page HTML possède l'extension .html, comme exemple.html
Je ne vais pas entrer dans les détails, mais en gros voici comment ça fonctionne pour une page HTML :
Il y a 2 étapes :
- Le client (c'est vous, le visiteur) demande à voir une page web. Il
va donc faire une demande au serveur : "S'il te plaît, envoie-moi la
page vacances.html". - Le serveur lui répond en lui envoyant la page vacances.html : "Tiens, voici la page que tu m'as demandée".
Tout ça se passe très poliment bien entendu
Le client voulait consulter la page vacances.html sur un site web : il
l'a demandée au serveur qui gère ce site, et le serveur lui a envoyé la
page que le client voulait. La page s'affiche alors sur l'écran du
client, sous ses yeux ébahis
Cela se passe à chaque fois que vous consultez une page HTML. Mais qu'est-ce qui peut bien changer avec PHP ?
Maintenant : en PHP
Il y a une étape qui vient s'ajouter entre les deux : la page PHP est
générée par le serveur avant l'envoi. Schématiquement ça donne ça :
Voyons à nouveau les étapes :
- Le client demande à voir une page PHP. Pour lui il n'y a aucune
différence. Il demande la page au serveur, toujours aussi poliment :
"S'il te plaît, envoie-moi la page vacances.php". - Mais là, il y a une étape très importante, qui fait toute la
différence en PHP. Le serveur n'envoie pas de suite la page au client.
Il la génère. En effet, le client n'est pas capable
de lire une page PHP (seul le serveur sait faire ça). Le client ne peut
lire que des pages HTML.
Ce que fait le serveur est simple : il va transformer la page PHP en page HTML, pour que le client puisse la lire. - Enfin, une fois que la page est générée, elle ne contient plus que
du code HTML. Le serveur peut l'envoyer au client : "Tiens, voici la
page que tu as demandée".