"Il me manque des étapes, peut-être des éléments fondamentaux que je ne saisis pas..." osent avouer certains visiteurs de ce site... Cette page sera donc pour eux, pour tenter de faire la liaison entre ce qui est incompréhensible quand on écrit ses premières pages dynamiques et tellement évident quand on a un peu de pratique que l'on oublie d'en parler...
Lorsqu'il doit envoyer une page html à votre navigateur, le serveur se la coule douce... il vous transmet en brut le fichier que le webmaster a placé dessus, c'est tout !
Par contre, lorsqu'on lui demande une page asp ou php, il va enfin se mettre à bosser... :), il va lui falloir décoder les instructions spécifiques, encadrées par <% et %> ou <? et ?> et construire d'après elles le code html qu'il va ensuite envoyer à votre navigateur... Vous n'allez donc plus, en tant que webmaster, écrire une page web, mais indiquer au serveur, via vos pages asp ou php, le plan de fabrication d'une page...
Exemple
Dans la page Installation, vous avez dû remarquer que la source produite était différente du code de votre page... En lisant le fichier suivant :
<HTML><HEAD><TITLE>Essai 1</TITLE> </HEAD><BODY> Nous sommes le <%=Date%> </BODY><HTML>
<HTML><HEAD><TITLE>Essai 1</TITLE> </HEAD><BODY> Nous sommes le <? echo date("d/m/Y"); ?> </BODY></HTML>
le serveur a exécuté les portions de code le concernant et produit la source HTML suivante :
<HTML><HEAD><TITLE>Essai 1</TITLE> </HEAD><BODY> Nous sommes le 28/08/2008 </BODY></HTML>
qu'il a ensuite envoyée à votre navigateur ! Magique ! :)
Attention !!!
Du coup, et de nombreux visiteurs ayant du mal à le comprendre à priori j'insiste donc sur ce point : une fois que la page s'affiche dans le navigateur, le travail du serveur est fini !!! Les seuls scripts qu'il pourra alors exécuter sont les scripts client (JavaScript ou VBScript). Pour exécuter de nouveaux scripts serveur (ASP ou PHP) il faudra donc recharger la page !!!
Enfin, on ne peut pas agir sur le serveur avec un script client !!! Par exemple, pour modifier un fichier ou une base de données situés sur le serveur, il faut passer par un script serveur ! De la même manière... pour agir sur le poste client, il faut passer par un script client !