Retour Accueil

Cours 03 Éléments communs à toutes les pages


Vous êtes dans le Cours 0003

ReculCours 0002   Cours 0004 Avance
003 php-mysql-js-article

Vous commencez le Cours N°3, ce qui signifie que vous avez bien assimilé les Cours 01 et 02, et regardé la seule page que nous allons analyser pas à pas puisque tout le site web repose sur le même principe de structure.
C'est-à-dire: La Page de notre Cours
L'outils de la page type
Sa feuille de style
Son Javascript

Nous expliquerons également dans les Cours tous les PHP communs au fur et à mesure que nous allons les découvrir. En particulier index-param.php , lesw-astuces/wsession.php , lesw-astuces/wdoctype.php , lesw-astuces/wmenugene.php et lesw-astuces/wbas.php




Alors ouvrons le PHP de cette page type, et regardons les premiéres lignes ...

<?php
session_start();  
$moijipi="jipi";     
require("index-param.php"); 
$erreur= (isset($_SESSION['erreur'])) ? $_SESSION['erreur'] : '';
require('zzz/32bdd.php');
$Drapeau="fr";  
header('Content-Type: text/html; charset=utf-8');  
$Leretour="index-astuces.php";
$LeTitle="Faites votre site WEB vous même Page analysée dans les Cours de Christéle Rubneau (site officiel)";
$Meta1="Contacter joindre   , ".$Meta1;
$Meta2="Contactez   ".$Meta2;
$lapage="0-web_topo-php-1000.php";
$bandeau_du_haut="O"; 
$bandeau_du_haut="logos/astuce-bandeau.jpg";
$menuactif=1;
$titrereseaux="Page exemple analysée dans les Cours";
$decrireseaux="Sur notre site les-astuces-du-web de Fox-Infographie";
$imagereseaux="les-astuces-du-web.jpg";
$urlreseaux=$lapage;

La balise d'ouverture de PHP doit impérativement être collée en haut de la page, il ne doit y avoir aucun saut de ligne ni d'espace avant le "Sans BOM (Byte Order Mark). Faute de quoi certains header et surtout l'ouverture des sessions seraient impossible, car votre navigateur recevrait un caractère insécable et invisible, considéré comme un début de HTML. Gardez toujours cela à l'esprit, ce qui vous évitera des heures à chercher une erreur dans vos pages alors qu'elles sont correctes.
Juste après la balise nous faisons immédiatement l'ouverture de session.
Vous savez sans doute les quatre moyens de passer des valeurs entre pages, en utilisant des formulaires (ou de l'AJAX) les valeurs sont alors envoyées en "POST" (variables invisibles) ou par GET (variables attachées en clair à l'URL de la page appelée,déconseillé).
Les deux autres méthodes sont les Cookies et les Sessions.
Et enfin, il est toujours possible d'utiliser des flags dans nos bases de données Mysql, ce que nous ne recommandons pas.
Gardez en mémoire que les Cookies sont des petits fichiers texte contenant par exemple votre login. Ils sont situés dans le cache de votre navigateur et peuvent être conservés si vous l'avez demandé. Les sessions sont également des fichiers texte, mais ils sont situés sur le serveur et sont détruits dès que vous quittez le site.
Il est temps de gérer la sécurité, c'est à cela que sert cette variable "$moijipi", alors arrêtons-nous un instant pour rappeler que lorsqu'un PHP en appelle un autre, comme ici "require('index-param.php');", si un hacker essaie d'exploiter ou de dévier l'entrée sur ce PHP alors il sera immédiatement rejeté puisque tout PHP destiné à être inclus (ou require) possède l'en-tête:

<?php 
if (!isset($moijipi))   
{
 header('Location:https://fox-infographie.com/index.php'); 
 exit;
}


Ainsi toute tentative sur ces PHP ne trouvant pas la variable "$moijipi" renvoie immédiatement à la page index du site.
Nous analisons la suite du fichier "index-param.php", dans le Cours N°04.