Créée le, 19/06/2015

 Mise à jour le, 19/05/2019

Visiteurs N°  




Accueil
Nouveau Blog Nouveautés Moteur de Recherche Votre Caddie Pour Vos Achats Votre Espace Membre Vos Signets et Vos Jeux Préférés Page de Bienvenue Statique Site en Français Site en Anglais
Sommaires
Électronique Fondamentale Technologie Fondamentale Testez vos Connaissances Électronique Théorique Digitale Électronique Pratique Digitale Lexique Électronique Numérique Data book TTL Data book CMOS Dépannage TVC Mathématique
Micro-ordinateurs
Théorique des Micro-ordinateurs Testez vos Connaissances Pratique des Micro-ordinateurs Glossaires sur les Ordinateurs
Physique
La lumière Champ d'action Rayonnement Électromagnétique
Technologies
Classification des Résistances Identification des Résistances Classification des Condensateurs Identification des Condensateurs
Formulaires Mathématiques
Géométrie Physique 1. - Électronique 1. 2. - Électronique 1. 3. - Électrotechnique 1. 4. - Électromagnétisme
Accès à tous nos Produits
E. T. F. - Tome I - 257 Pages E. T. F. - Tome II - 451 Pages E. T. F. - Tome III - 611 Pages E. T. D. - Tome I - 610 Pages N. B. M. - Tome I - 201 Pages E. T. M. - Tome I - 554 Pages Business à Domicile Ouvrages 34 pages gratuits Nos E-books Logiciel Géométrie Logiciel Composants Électroniques
Aperçu de tous nos Produits
E. T. F. - Tome I - 257 Pages E. T. F. - Tome II - 451 Pages E. T. F. - Tome III - 611 Pages E. T. D. - Tome I - 610 Pages E. T. M. - Tome I - 554 Pages Logiciel Géométrie Logiciel Composants Électroniques
Nos Leçons aux Formats PDF
Électronique Fondamentale Technologie Fondamentale Électronique Théorique Digitale Électronique Pratique Digitale Théorique des Micro-ordinateurs Mathématiques
Informatique
Dépannage Win98 et WinXP et autres Dépannage PC Glossaire HTML et Programmes PHP et Programmes JavaScript (en cours de travaux) Création de plusieurs Sites
Forums
Forum Électronique et Infos Forum Électronique et Poésie
Divers et autres
Formulaire des pages perso News XML Statistiques CountUs Éditeur JavaScript Nos Partenaires et nos Liens Utiles Gestionnaire de Partenariat Nos Partenaires MyCircle Sondages 1er Livre d'Or 2ème livre d'Or

Signets :
  Leçons suivantes        Leçons précédentes     Bas de page
  Cliquez ici pour la leçon suivante ou dans le sommaire prévu à cet effet


Authentifier les Utilisateurs et personnaliser le site (3ème partie) :



Implémentation d'ouverture de session :


Lorsque des utilisateurs saisissent leurs informations dans le formulaire du script de connexion.php ou login.php (voir figure 4 à cette adresse, en cliquant ici) et qu'ils les renvoient. Ils arrivent sur le script de la page de Bienvenue.php à laquelle que les utilisateurs peuvent cliquer sur le lien du menu "Ajouter un Signet". Ce script permet d'ouvrir une session si l'utilisateur vient de compléter le formulaire de la figure 7, et il affiche tous les sites favoris de l'utilisateur qui vient d'ouvrir la session, en cliquant sur le lien du menu "Voir vos Signets". Ce script est donc le centre de notre application, et il est présenté dans le Listing 9.


Formulaire_pour_Ajouter_une_URL.png


Listing 9. - Le fichier member.php - Le script central de l'application :


Vous reconnaissez peut-être la logique de ce script : nous y reprenons certaines idées expliquées dans une de nos leçons précédentes.

Tout d'abord, nous vérifions si l'utilisateur vient de remplir le formulaire, et nous tentons d'ouvrir une session :

    if ($username && $password)

    //L'utilisateur vient de compléter le formulaire

    {

    if (login($username, $password))

    {

    //S'il est dans la base de données, on enregistre son indentificateur.

    session_start() ;

    $_SESSION['password'] = $_POST['password'];

    // Avec la fonction ISSET Si la variable $_POST['valid_user'] existe, alors $valid_user = $_POST['valid_user'] sinon, elle vaut NULL

    $valid_user = isset($_POST['valid_user']) ? $_POST['valid_user'] : NULL ;

    // Ou avec !EMPTY() Si la variable $_POST['valid_user'] existe et n'est pas vide, alors $valid_user = $_POST['valid_user'] sinon, elle vaut NULL

    $valid_user = !empty($_POST['valid_user']) ? $_POST['valid_user'] : NULL;

    $valid_user = $username ;

    $_POST["valid_user"] ;

    }

Pour le reste du programme, voir le Listing 9.

Vous pouvez constater que nous tentons d'ouvrir la session avec une fonction appelée login(). Cette fonction est définie dans la bibliothèque user_auth_fns.php, et nous allons étudier son code dans un instant.

Si l'ouverture de session est réussie, nous enregistrons cette session comme nous le faisions auparavant, en enregistrant le nom de l'utilisateur dans la variable de session $valid_user.

Si tout se passe bien, nous pouvons afficher la page personnelle de l'utilisateur :

    do_html_header("") ;

    check_valid_user() ;

    // Récupère les sites favoris de cet utilisateur.

    if ($url_array = get_user_urls($valid_user)) ;

    display_user_urls($url_array) ;

    // Affiche le menu d'options.

    display_user_menu() ;

    do_html_footer() ;

Une fois de plus, cette page est créée à l'aide des fonctions de sortie. Vous remarquerez que nous utilisons également plusieurs nouvelles fonctions : check_valid_user() de user_auth_fns.php, get_user_urls() de url_fns.php et display_user_urls() de output_fns.php. La fonction check_valid_user() vérifie si l'utilisateur actuel a ouvert une session enregistrée. Elle n'est pas destinée aux utilisateurs qui viennent d'ouvrir une session, mais à ceux qui sont en plein milieu de leur session. La fonction get_user_urls() récupère les liens d'un utilisateur dans la base de données, et display_user_urls() affiche ces liens dans le navigateur, sous la forme d'un tableau. Nous reviendrons sur check_valid_user() et sur les deux autres fonctions dans un instant, dans la section consacrée à l'enregistrement et à la lecture des liens.

Le script member.php ou add_bms.php termine la page, en affichant un menu avec la fonction display_user_menu().

Un exemple de sortie générée par add_bms.php est présenté à la figure 8.


Ajouts_des_Liens_dans_ADD_BNS.png


Comme vous pouvez le constater dans le Listing 9, cette page member.php ou add_bms.php se connecte à la base de données et vérifie si un utilisateur possédant le nom et le mot de passe spécifiés existe bien. Elle renvoie true dans ce cas, et false dans le cas contraire, ou si les informations de l'utilisateur n'ont pas pu être vérifiées.

La fonction check_valid_user() se connecte également de nouveau à la base de données mais, elle se contente de vérifier si l'utilisateur a bien enregistré une session, c'est-à-dire s'il s'est bien loggé sur le site. Cette fonction est présentée dans le Listing 10.


Listing 10. - La fonction check_valid_user() de user_auth_fns.php - Cette fonction vérifie si l'utilisateur possède une session valide :


Si l'utilisateur ne s'est pas loggé, cette fonction lui indique qu'il doit ouvrir une session pour afficher cette page et lui propose un lien vers la page de login.

Fermeture de session :

Vous avez peut-être remarqué qu'il existe un lien "Se Déconnecter" sur le menu de la figure 8. Il s'agit d'un lien vers le script logout.php. Le code de ce script est présenté dans le Listing 11.


Listing 11. - logout.php - Ce script permet de fermer la session d'un utilisateur :


Une fois de plus, ce code peut vous sembler familier. En effet, il reprend le code que nous avions écrit dans la leçon précédente. En cliquant ici.

Modifier les mots de passe :

Si un utilisateur choisit l'option Modifier le Mot de Passe, il obtient le formulaire présenté à la figure 9.


Modifier_Mot_de_Passe.png


Ce formulaire est généré par le script edit_infos.php. Il s'agit d'un script qui se contente d'utiliser certaines fonctions de la bibliothèque de sortie que nous avions déjà évoqué dans une de nos leçons, c'est pourquoi qu'on va présenter de nouveau son code source, puisqu'il y a eu une certaine modification des mises à jour des informations du fichier edit_infos.php.


Listing 12. - edit_infos.php - Ce script tente de modifier le mot de passe ainsi que certaines informations d'un utilisateur :


Lorsque le formulaire est envoyé, il active le script de connexion.php du Listing 13, puis le désactive ensuite via le message d'avertissement comme suit : "Vos informations ont bien été modifiées. Vous devez vous reconnecter, en vous remerciant !, en cliquant sur le lien "Se connecter". (Voir le Listing 12).


Listing 13. - connexion.php - Ce script permet de se connecter sur le site de l'espace membre :


Ce script vérifie que l'utilisateur s'est bien loggé, mais que nous avions déjà écrit dans le Listing 3 de la leçon précédente, et nous le reportons ici-même, en cliquant ici. Et nous vérifions également que le formulaire du mot de passe ainsi que les autres informations a bien été rempli et nous vérifions à nouveau si les mots de passe s'ils sont bien identiques et qu'ils ont une longueur appropriée. Rien de tout cela n'est très nouveau. Si tout se passe bien, les informations doivent se mettre à jour dans la base de données :

    //On modifie les informations de l'utilisateur avec les nouvelles

    if(mysql_query('UPDATE membre_utilisateurs SET Nom_Utilisateur = "'.$username.'", Mot_de_Passe="'.$password.'", E_Mail="'.$email.'", Avatar="'.$avatar.'" where id="'.mysql_real_escape_string($_SESSION['userid']).'"'))

    {

    //Si cela a fonctionné, on n'affiche pas le formulaire

    $form = false;

    //On supprime les sessions username et userid au cas ou il aurait modifié son Pseudo

    unset($_SESSION['username'], $_SESSION['userid']);

Pour la fermeture de l'accolade, voir le Listing 12.

Nous terminons ainsi ce troisième chapitre de cette leçon, et nous verrons dans le prochain, L'implémentation de l'enregistrement et de la lecture des liens.



  Cliquez ici pour la leçon suivante ou dans le sommaire prévu à cet effet.   Haut de page
  Page précédente   Page suivante







Nombre de pages vues, à partir de cette date : le 23 MAI 2019

compteur de visite

    




Envoyez un courrier électronique à Administrateur Web Société pour toute question ou remarque concernant ce site Web. 

Version du site : 10. 5. 14 - Site optimisation 1280 x 1024 pixels - Faculté de Nanterre - Dernière modification : 19 MAI 2019.   

Ce site Web a été Créé le, 14 Mars 1999 et ayant Rénové, en MAI 2019.