Chap 1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 21

Faites la différence entre site statique et dynamique

On considère qu'il existe deux types de sites web :

• Les sites statiques.

• Et les sites dynamiques.

Découvrez le principe d'un site statique


Un site statique est réalisé uniquement à l'aide des langages HTML et CSS.

Il fonctionne très bien, mais son contenu ne peut pas être mis à jour automatiquement : il faut que le webmaster modifie le code source pour y ajouter des
nouveautés.

Découvrez le principe d'un site dynamique


Plus complexe, un site dynamique utilise d'autres langages en plus de HTML et CSS, tels que PHP et MySQL.
Le contenu de ce type de site est dit « dynamique » parce qu'il peut changer sans l'intervention du webmaster !
Comprenez le fonctionnement d'un site web
Lorsque vous voulez visiter un site web, vous tapez son adresse dans votre navigateur web. Mais ne vous êtes-vous jamais demandé comment faisait la page
web pour arriver jusqu'à vous ?
Il faut savoir qu'Internet est un réseau composé d'ordinateurs. Ceux-ci peuvent être classés en deux catégories :
1.Les clients : ce sont les ordinateurs des internautes comme vous. Votre ordinateur fait donc partie de la catégorie des clients. Chaque client représente un
visiteur d'un site web.
2.Les serveurs : ce sont des ordinateurs puissants qui stockent et délivrent des sites web aux internautes, c'est-à-dire aux clients. La plupart des internautes
n'ont jamais vu un serveur de leur vie. Pourtant, les serveurs sont indispensables au bon fonctionnement du Web.
Ajoutez PHP et MySQL pour un site dynamique
Quel que soit le site web que l'on souhaite créer, HTML et CSS sont donc indispensables. Cependant, ils ne suffisent pas pour réaliser des sites dynamiques. Il
faut les compléter avec d'autres langages.

C'est justement tout l'objet de ce cours : vous allez apprendre à manipuler PHP et MySQL pour réaliser un site web dynamique.

PHP
C'est un langage que seuls les serveurs comprennent, et qui permet de rendre votre site dynamique

Ce sera le premier langage que nous découvrirons dans ce cours.

Voici un code PHP :

<?php echo "Vous êtes le visiteur n°" . $nbre_visiteurs; ?>


Le langage PHP peut fonctionner seul, mais il ne prend vraiment de l'intérêt que s'il est combiné à un outil tel que MySQL.
MySQL
MySQL est ce que l'on appelle un Système de Gestion de Bases de Données (SGBD).
Pour faire simple : son rôle est d'enregistrer des données de manière organisée, afin de vous aider à les retrouver facilement plus tard.
C'est grâce à MySQL que vous pourrez enregistrer :
• la liste des membres de votre site web ;
• les messages postés sur le forum ;
etc.
Le langage qui permet de communiquer avec la base de données s'appelle le SQL.

Voici un code en langage SQL :

SELECT id, auteur, message, datemsg FROM livreor ORDER BY datemsg DESC LIMIT 0, 10

PHP et MySQL sont disponibles gratuitement et sous licence Open Source. Cela signifie une chose essentielle : vous n'aurez pas à débourser
un centime pour construire votre site web !
Les clients sont incapables de comprendre le code PHP : ils ne connaissent que le HTML et le CSS. Seul le serveur est
capable de lire du PHP. Le rôle de PHP est justement de générer du code HTML, code qui est ensuite envoyé au client de la
même manière qu'un site statique, comme le montre la figure suivante :

PHP décide ce qui va être affiché sur la page web envoyée au


visiteur
Pour bien comprendre l'intérêt de tout cela, prenons un exemple.

On peut écrire en PHP :

« Si le visiteur est membre de mon site et qu'il s'appelle Jonathan, affiche Bienvenue Jonathan sur la page web. En revanche,
si ce n'est pas un membre de mon site, affiche Bienvenue à la place, et propose au visiteur de s’inscrire. »

C'est un exemple très basique de site dynamique : selon que vous êtes un membre enregistré ou non, vous ne verrez pas les
mêmes choses, et n'aurez peut-être pas accès au même contenu.
En résumé
•Il existe deux types de sites web :
• Les sites statiques : réalisés en HTML et CSS, leur contenu ne peut être mis à jour que par le webmaster.
• Les sites dynamiques : réalisés avec d'autres outils comme PHP et MySQL en plus de HTML et CSS, ils permettent aux
visiteurs de participer à la vie du site, de poster des messages… bref, de rendre le site vivant !
•Les visiteurs du site sont appelés les "clients". Ils demandent au serveur qui héberge le site de leur transmettre les pages web.
•PHP est un langage exécuté par le serveur. Il permet de personnaliser la page en fonction du visiteur, de traiter ses messages,
d'effectuer des calculs, etc. Il génère une page HTML.
•MySQL est un système de gestion de bases de données. Il se charge du stockage des informations (liste des messages, des
membres…).
Dans le prochain chapitre, nous allons voir comment vous préparer pour commencer à coder !
Préparez votre environnement de travail
Nous savons désormais que PHP s'exécute sur le serveur, et que son rôle est de générer des pages web. Cependant, seul un
serveur peut lire du PHP ; or, votre ordinateur n'est pas un serveur.
Mais alors comment créer un site dynamique si PHP ne fonctionne pas chez moi ?
Qu'à cela ne tienne : nous allons temporairement transformer votre ordinateur en serveur pour que vous puissiez exécuter
du PHP et travailler sur votre site dynamique.
Ayez en tête les outils de base pour créer un site statique
Les webmasters qui créent des sites statiques avec HTML et CSS ont de la chance, ils ont en général déjà tous les
programmes dont ils ont besoin :
1.Un éditeur de texte.
2.Un navigateur web.
Un éditeur de texte
Utilisez les outils pour créer un site dynamique
Pour que votre ordinateur puisse lire du PHP, il faut qu'il se comporte comme un serveur.
Rassurez-vous : vous n'avez pas besoin d'acheter une machine spéciale pour cela !
Il suffit simplement d'installer les mêmes programmes que ceux que l'on trouve sur les serveurs qui délivrent les sites web aux internautes.
Quels sont les programmes que je dois installer ?
Apache
C'est ce qu'on appelle un serveur web. Il s'agit du plus important de tous les programmes, car c'est lui qui est chargé de délivrer les pages web aux visiteurs.
Cependant, Apache ne gère que les sites web statiques (il ne peut traiter que des pages HTML). Il faut donc le compléter avec d'autres programmes.
PHP
C'est un plug-in pour Apache qui le rend capable de traiter des pages web dynamiques en PHP. En clair, en combinant Apache et PHP, notre ordinateur sera
capable de lire des pages web en PHP.
MySQL
C'est le logiciel de gestion de bases de données dont je vous ai parlé avant. Il permet d'enregistrer des données de manière organisée (comme la liste des membres
de votre site). Nous n'en aurons pas besoin immédiatement, mais autant l'installer de suite.
Tous ces éléments sont libres et gratuits.
Installez MAMP 4.2 si vous êtes sous Windows ou Mac
Il existe plusieurs "paquetages" pour Windows et Mac. Je vous propose d'utiliser MAMP, qui marche à la fois pour Windows et pour Mac. Il a l'avantage
d'être régulièrement mis à jour.
En résumé
Pour créer des sites web dynamiques, nous devons installer des outils qui transforment notre ordinateur en serveur, afin de pouvoir tester notre site.
Les principaux outils nécessaires sont :
• Apache, le serveur web.
• PHP, le programme qui permet au serveur web d'exécuter des pages PHP.
• MySQL, le logiciel de gestion de bases de données.

Bien qu'il soit possible d'installer ces outils séparément, il est plus simple pour nous d'installer un paquetage tout prêt : MAMP sous Windows et macOS, ou
XAMPP sous Linux.

Il est conseillé d'utiliser un éditeur de texte qui colore le code source, comme Visual Studio Code, pour programmer convenablement en PHP. Pour les
personnes plus expérimentées qui travaillent sur de gros projets, je recommande PHPStorm.
Reconnaissez la forme d'une balise PHP
Pour utiliser du PHP, on va devoir introduire une nouvelle balise… et celle-ci est un peu spéciale.

Elle commence par <?php

Et se termine par?>

C'est à l'intérieur que l'on mettra du code PHP (ce que je vais vous apprendre tout au long de ce cours).

Voici une balise PHP vide :

<?php ?>
À l'intérieur, on écrira donc du code source PHP :
l existe d'autres balises pour utiliser du PHP ; par exemple :

<? ?>

<% %>

<?= ?>
Ne soyez donc pas étonné si vous en voyez.
<?php ?> est la forme la plus correcte ; vous apprendrez donc à vous servir de cette balise et non pas des autres.
On peut placer une balise PHP n'importe où dans le code
<!DOCTYPE html>
<html>
<head>
<title>Ceci est une page de test avec des balises PHP</title>
<meta charset="utf-8" />
</head>
<body>
<h2>Page de test</h2>

<p>
Cette page contient du code HTML avec des balises PHP.<br />
<?php /* Insérer du code PHP ici */ ?>
Voici quelques petits tests :
</p>

<ul>
<li style="color: blue;">Texte en bleu</li>
<li style="color: red;">Texte en rouge</li>
<li style="color: green;">Texte en vert</li>
</ul>

<?php
/* Encore du PHP
Toujours du PHP */
?>
</body>
</html>
Affichez du texte
Ici, la première instruction que nous allons découvrir permet d'insérer du texte dans la page web. Il s'agit de l'instruction echo, la plus simple et la plus basique
de toutes les instructions que vous devez connaître.

Voici un exemple d'utilisation de cette instruction :

<?php echo "Ceci est du texte"; ?>

<!-- Ou bien, avec des parenthèses -->


<?php echo("Ceci est du texte"); ?>
Notez qu'il existe une instruction identique à echo appelée print , qui fait la même chose.
Cependant, echo est plus couramment utilisée.
Enregistrez une page PHP
Enregistrez la page avec l'extension .php . Par exemple : affichertexte.php , dans le dossier www.

Il doit se trouver :

dans C:\MAMP\www sous Windows,

ou /Applications/MAMP/www
Quel que soit votre système d'exploitation, l'essentiel est que le fichier soit enregistré dans le dossier www si vous utilisez MAMP ou WAMP (ou un de ses
sous-dossiers) ; sinon le fichier PHP ne pourra pas s'exécuter !

Une fois la page enregistrée, il faut maintenant la tester.


Testez la page PHP
Pour tester votre page PHP, tout dépend de votre système d'exploitation, mais la manœuvre est la même dans les grandes lignes.

Démarrez MAMP (ou XAMPP) si ce n'est pas déjà fait.

Allez à l'adresse http://localhost/tests ou http://localhost:8888/tests (selon votre configuration). Une page web s'ouvre, indiquant tous les fichiers qui se
trouvent dans le dossier tests . Vous devriez avoir le fichier affichertexte.php .

Cliquez dessus : votre ordinateur génère alors le code PHP puis ouvre la page.
Le même résultat peut être obtenu dans votre navigateur, en allant directement à l'adresse suivante : http://localhost/www/affichertexte.php.

La méthode devrait être quasiment la même, que vous soyez sous Windows, Mac OS X ou Linux.

Si vous utilisez le serveur local de PHP, vous pouvez sauvegarder le fichier où vous le souhaitez, mais en contrepartie vous devez toujours démarrer le serveur
au niveau d'un dossier contenant le fichier à exécuter.
En résumé
Les pages web contenant du PHP ont l'extension .php

Une page PHP est une simple page HTML qui contient des instructions en langage PHP.

Les instructions PHP sont placées dans une balise ouvrante et fermante : <?php ?>

Pour afficher du texte en PHP, on utilise l'instruction echo

Il est possible d'ajouter des commentaires en PHP pour décrire le fonctionnement du code. On utilise pour cela les symboles
// ou /* */
Configurez PHP pour visualiser les erreurs

Avant d'aller plus loin, il est important de faire un petit point à propos de quelque chose que vous allez sans doute beaucoup rencontrer (et ce n'est absolument
pas grave !) : les erreurs.

En effet, lorsqu'un script PHP plante, le comportement par défaut de PHP est de n'afficher qu'une page blanche (une page de navigateur sans contenu).

Pour faciliter notre vie de développeur, il va falloir faire en sorte que les erreurs PHP s'affichent. Sinon, nous aurons de grosses difficultés par la suite pour
comprendre pourquoi nos pages ne marchent pas.

Nous allons donc changer la configuration de PHP.


La configuration de PHP se fait dans un fichier appelé php.ini
Localisez le fichier de configuration PHP du serveur web
Pour connaître l'ensemble des informations relatives au PHP utilisé par le serveur web, il existe une commande PHP, phpinfo() (on parle de fonction, mais on y
reviendra).

Nous allons utiliser phpinfo() pour localiser le fichier de configuration, puis le modifier.

Je vous invite donc à créer un fichier PHP avec le code qui suit :

<?php

phpinfo();
Enregistrez-le sous le nom info.php dans le dossier accessible pour votre serveur web (normalement htdocs ou www ).

Et enfin, affichez la page. Vous devriez obtenir le résultat suivant :


Modifiez le fichier de configuration PHP
Il faut s'assurer que :

la clé de configuration error_reporting a la valeur E_ALL

la clé de configuration display_errors a la valeur On

Allons-y étape par étape :

Effectuez une recherche dans le fichier avec le terme error_reporting . S'il n'y a pas écrit error_reporting = E_ALL , remplacez-la
par la bonne valeur.

Ensuite, effectuez une nouvelle recherche dans le fichier avec le terme display_errors . S'il n'y a pas écrit display_errors = On ,
remplacez-la par la bonne valeur.

Enregistrez le fichier.

Relancez le serveur pour qu'il prenne en compte vos modifications. Il suffit de relancer MAMP, par exemple.
Testez l'affichage des erreurs
Nous allons maintenant créer une erreur dans un script PHP pour nous assurer que l'erreur s'affiche dans le navigateur.

Dans le script (que nous avons créé pour afficher les informations relatives à PHP pour le serveur web ; nous l'avions appelé info.php ), retirez une parenthèse,
puis enregistrez le fichier.

Ça devrait donner ceci :

<?php

phpinfo(;
Oui, je sais, il manque une parenthèse, c'est une erreur, on le fait exprès.

Maintenant, affichez la page à l'aide de votre navigateur web.