a)Avant : en HTML
nous rappellons qu'une page HTML possède l'extension
.html, comme exemple.html nous n'allons pas entrer dans les détails,
mais en gros voici comment ça fonctionne pour une page HTML :
Il y a 2 étapes :
1. Le client (c'est un travailleur par exemple) demande
à voir une information. Il va donc faire une demande au serveur : "S'il
te plaît, envoie-moi la page affichierlivre.html".
2. Le serveur lui répond en lui envoyant la page
affichierlivre.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 affichierlivre.html sur notre application :
il l'a demandée au serveur qui gère cette
application, 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.
Cela se passe à chaque fois que vous consultez une page
HTML. Mais qu'est-ce qui peut bien changer avec PHP ?
b) 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 :
1. 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 affichierlivre.php".
2. 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.
3. 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".
Nous allons en dire un peu plus sur cette deuxième
étape : celle de la génération de la page. Il est
important de bien comprendre ce qui s'y passe. Que veut dire
"génération de la page PHP" ? Nous montrons un bout de code PHP
au début.
Code : PHP
1
|
<?php echo("Vous êtes le travailleur n°" .
$nbre_visiteurs);?>
|
Les ordinateurs des clients ne savent pas lire ce code PHP :
ils ne connaissent que le HTML. C'est donc au serveur de transformer le code
PHP en HTML. Le code PHP contient des instructions. Il
demande au serveur d'effectuer des actions : donner l'heure, le nombre de
personnes connectées sur le site etc... Bref, le PHP donne des ordres au
serveur.
Ce genre de choses était impossible en HTML. Avec PHP,
c'est possible, et nous verrons que ça change tout.
Nous n'oublions pas qu'une page PHP contient aussi du code
HTML.
Tant qu'il y a du code HTML, le serveur n'y touche pas.
Dès qu'il tombe sur du code PHP, il le lit, il l'exécute (il fait
ce que le code lui demande), et il transforme ça en HTML.
En fin de compte, la page générée ne
contient plus que du HTML :
Le client peut alors la lire.
Ce qui est particulier ici, c'est que cette page
générée est destinée à un seul client. Quand
un nouveau client se présente, le serveur recommence à
générer une page HTML.
Ca veut dire qu'en fait la page
générée peut être à chaque fois unique.
C'est bien ça qui est génial par rapport au HTML : en HTML la
page envoyée était toujours la même, le serveur envoyait
juste le fichier. En PHP, le serveur travaille pour le client et lui offre une
page personnalisée.
Notons que la génération de la page peut prendre
du temps (quelques millisecondes en fonction de la taille de la page).
Cela veut dire que le serveur doit être plus puissant
pour pouvoir traiter du PHP qu'un serveur HTML normal... comme le cas dans
notre application , ce n'est pas un personnel, partenaire ou apprenant qui va
demander une page PHP, mais plutôt plusieurs en même temps !
|