Magazine

Implanter une section sécurisée sur votre site avec PHP

Publié le 14 mars 2008 par Dave Lizotte
Depuis les débuts de PcKULT.NET, j'ai reçu beaucoup de courriels concernant la difficulté pour la plupart des débutants de créer une section sécurisée pour leur plateforme web pour les raisons suivantes :
  1. Incapacité de maintenir les sessions de connexion si l'usager visite une nouvelle page.
  2. Incapacité de rediriger un usager à une page spécifique après la connexion au système.
C'est pourquoi j'ai déniché pour vous un système de sécurité PHP à intégrer à votre projet en quelques minutes.
Télécharger le script PHP
Avant de démarrer, regardons ce que contiennent l'archives :
Archives
 
  • login-form.php - Contiens le formulaire de login contenant 2 champs (email et mot de passe).
  • common-functions.php - Contiens la fonction de redirection et de nettoyage des champs de saisie afin d'éviter les injections de code dans les champs texte du formulaire.
  • config.php - Contiens la connexion à la base de données.
  • login.php - Contient une requête SQL permettant de vérifier si l'usager existe ainsi que la fonction de création de la session PHP si l'usager est correctement identifié.
  • logout.php - Contiens la fonction de suppression de la session si vous êtes connecté.
  Dans ce script, nous supposons que votre base de données gère les usagers avec leur email. Dans le cas ou l'usager entre un mot de passe ou un email incorrect, un message d'erreur est alors affiché: Message d'erreur
...autrement, si l'authentification est réussie, un lien déconnexion (logout) apparait:
Connexion réussi


Étape 1: Inclure login-form.php

Créer une nouvelle page PHP nommé index.php dans le même répertoire que login-form.php. Ouvrez index.php et ajoutez-lui entre les balises <body> le code suivant :
  <?php include('login-form.php')?>
Ceci aura pour effet d'afficher le formulaire de connexion sur votre page. Par la suite, ajoutez-lui la ligne qui suit dans le haut de votre page index.php et assurez-vous que cette ligne soit placée avant toute autre ligne de code dans votre page sinon, la session ne fonctionnera pas:
  <?php session_start(); ?>


Étape 2: Modifier config.php

Modifier les informations de connexion à la base de données dans le fichier config.php:
Connexion à la base de données

Étape 3: Modifier login.php

Vous pouvez modifier ce fichier dans le cas ou votre table ne s'appellerait pas « USER » ou que les champs « email » et « password » ne sont pas présent dans votre table. Ajuster donc la requête en fonction de votre table.
  Requête MySQL
L'utilisation de la clé primaire pour stocker une session est une bonne pratique en PHP. Si votre clé est différente de « ID_USER_PK », modifier celle-ci en fonction de la vôtre.
  Vous pouvez aussi modifier l'adresse de redirection lorsqu'un usager s'authentifie ou lorsque celui-ci saisit un mauvais nom d'usager ou mot de passe.
 

Étape 4: Modifier l'adresse de redirection lors de la déconnexion dans logout.php

Dernière étape, modifier l'adresse de redirection lorsqu'un usager clique sur le lien déconnexion (Logout):
  Déconnexion
C'est tout! Si vous avez bien ajusté les pages, le tout devrait fonctionner à merveille. Si vous avez des questions, n'hésitez pas.
 

Vous pourriez être intéressé par :

Retour à La Une de Logo Paperblog

Ces articles peuvent vous intéresser :

  • IBM: Unicode for the working PHP programmer

    La plate-forme developperWorks d'IBM nous propose un article sur l'utilisation de l'unicode en PHP 5. L'encodage du texte est une problèmatique récurrente dans... Lire la suite

    Par  Marie
    INTERNET, PROGRAMMATION, RECHERCHE D'EMPLOI
  • IBM : Débuter avec les frameworks PHP

    Dans un article paru sur le site IBM, Duane O'Brien propose d'examiner les similitudes et les différences de trois frameworks PHP : Zend, symfony, CakePHP. Lire la suite

    Par  Marie
    INTERNET, PROGRAMMATION, RECHERCHE D'EMPLOI
  • Débugger les applications PHP avec syslog

    William B. Zimmerly a écrit un article sur le site d'IBM concernant l'utilisation de syslog afin de débugger des applications PHP. Lire la suite

    Par  Marie
    INTERNET, PROGRAMMATION, RECHERCHE D'EMPLOI
  • 10 conseils pour bien commencer en PHP

    Il y a des centaines (littéralement) de langages qui existent. Cet article n'est pas un encouragement pour vous d'utiliser PHP. Peut-être un autre langage est-i... Lire la suite

    Par  Francois Baligant
    BLOG, A CLASSER
  • Quelques conventions d'écriture avec PHP

    Indentation et longueur de lignes Utilisez une indentation de 4 espaces, sans tabulationis. Il est recommandé que la longueur des lignes ne dépasse pas 75 à 85... Lire la suite

    Par  Dave Lizotte
    HIGH TECH, INFORMATIQUE, INTERNET, MOBILES
  • Php 5.2.5

    L'équipe de développement de PHP vient d'annoncer la sortie de PHP 5.2.5. Cette nouvelle version comporte plus de soixante correctifs et améliore la stabilité d... Lire la suite

    Par  Marie
    INTERNET, PROGRAMMATION, RECHERCHE D'EMPLOI
  • Créer une function en php

    1. Qu’est ce que c’est ? Utilité ? Une fonction permet de regrouper plusieurs fonctions/codes <…> a appliquer a une ou plusieurs variables (ou aucune).... Lire la suite

    Par  Nabil Dawdy
    INTERNET, LOGICIELS, PROGRAMMATION

A propos de l’auteur


Dave Lizotte 57 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte