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 (4ème partie) :


Implémentation de l'enregistrement et de la lecture des liens :

Nous allons maintenant nous intéresser à la manière dont les liens des utilisateurs sont enregistrés, lus et supprimés.


Ajouter des liens :

Les utilisateurs peuvent ajouter des liens, en cliquant sur l'option "Ajouter un Signet" dans le menu. Cela les amène au formulaire présenté à la figure 10.


Ajouter_les_Liens_dans_un_Formulaire.png


Une fois encore, ce script est très simple dans le Listing 14, puisqu'il se contente d'utiliser les fonctions de sortie.


Listing 14. - add_bm_form.php - La page du formulaire pour ajouter les liens ou signets :


Nous mettons également le script output_fns.php des fonctions de sortie permettant de formater l'HTML dans le Listing 15.


Listing 15. - output_fns.php - Les formulaires et les fonctions de sortie :


Lorsque le formulaire est envoyé, il appelle le script add_bms.php, qui est présenté dans le Listing 16.


Listing 16. - add_bms.php - Ce script ajoute de nouveaux liens dans la page personnelle d'un utilisateur :


Ce script respecte aussi la procédure de validation, d'utilisation de la base de données, et de sortie.

Pour la validation, nous devons vérifier que l'utilisateur a bien rempli le formulaire avec la fonction filled_out().

Nous effectuons ensuite deux vérifications sur l'URL. Tout d'abord, à l'aide de strstr(), nous regardons si l'URL commence par http://. Si ce n'est pas le cas, nous ajoutons cette chaîne de caractères au début de l'URL. Après cela, nous pouvons vérifier si l'URL existe réellement. Comme nous l'avons vu dans la 2ème leçon de PHP, nous pouvons nous servir de la fonction fopen() pour ouvrir une URL commençant par http://. Si nous pouvons ouvrir le fichier correspondant à cette adresse, nous supposons que l'URL est valide, et nous appelons la fonction add_bm() pour l'ajouter dans la base de données.

Vous remarquerez que fopen() ne peut ouvrir les fichiers que si votre serveur possède un accès direct à Internet. S'il doit passer par un proxy pour accéder aux autres serveurs HTTP, la fonction fopen() ne peut fonctionner.

Cette fonction, ainsi que toutes les autres fonctions permettant de travailler sur les sites favoris de l'utilisateur, se trouve dans la bibliothèque url_fns.php. Vous trouverez le code de la fonction add_bm() dans le Listing 17.


Listing 17. - La fonction add_bm() de url_fns.php - Cette fonction ajoute de nouveaux liens dans la base de données :


Cette fonction est très simple. Elle vérifie que l'utilisateur n'a pas déjà enregistré ce lien dans la base de données. Bien qu'il soit peu probable qu'un utilisateur ajoute deux fois le même site dans ses favoris, il est possible qu'il rafraîchisse la page. Si l'URL correspond bien à un nouveau site, elle est ajoutée dans la base de données.

Si nous revenons à add_bms.php du Listing 16, nous pouvons constater que ce script se termine en appelant get_user_urls() et display_user_urls(), comme member.php du Listing 9. Nous allons continuer notre étude et revenir un peu plus tard sur ces fonctions.

Afficher les liens des utilisateurs :

Dans le script member.php et la fonction add_bm(), nous nous servons des fonctions get_user_urls() et display_user_urls(). Ces fonctions servent à récupérer les liens de l'utilisateur dans la base de données et à les afficher, respectivement. La fonction get_user_urls() se trouve dans la bibliothèque url_fns.php et display_user_urls() dans la bibliothèque output_fns.php.

Le code de la fonction get_user_urls() se trouve dans le Listing 18.


Listing 18. - La fonction get_user_urls() de url_fns.php - Cette fonction va chercher les liens de l'utilisateur dans la base de données :


Nous allons maintenant étudier rapidement cette fonction. Elle prend en argument un nom d'utilisateur, et va chercher les favoris de cet utilisateur dans la base de données. Elle renvoie un tableau contenant ces URLs, ou false si les liens n'ont pas pu être récupérés.

Le tableau de get_user_urls() peut être transmis à display_user_urls(). Il s'agit une fois encore d'une simple fonction d'affichage HTML permettant de formater les URLs de l'utilisateur dans un tableau. Reportez-vous à la figure 8 en cliquant ici, pour un exemple de résultat obtenu. En fait, la fonction place les URLs dans un formulaire. A côté de chaque URL se trouve une case à cocher permettant de sélectionner les favoris à supprimer. Cela nous amène tout naturellement à la suppression des liens.

Supprimer des liens :

Lorsqu'un utilisateur sélectionne un lien pour le supprimer, et lorsqu'il clique sur l'option "Supprimer le Signet", le formulaire contenant les URLs sélectionnées est envoyé. Chaque case à cocher est générée par la partie suivante de la fonction display_user_urls() du fichier output_fns.php du Listing 15 :

    echo "<td> <INPUT TYPE = \"checkbox\" name = \"del_me[]\" "

    . "value = \"$url\"/> </td> </tr>" ;

Le nom de chaque entrée est del_me[]. Cela signifie que, dans le script PHP est activé par ce formulaire, nous pouvons accéder à un tableau appelé del_me[], qui contient les liens à effacer.

Lorsque l'utilisateur clique sur l'option "Supprimer le Signet", le script delete_bms.php est activé. Ce script est présenté dans le Listing 19.


Listing 19. - delete_bms.php - Ce script supprime des liens dans la base de données :


Ce script commence par effectuer les validations d'usage. Lorsque nous savons que l'utilisateur a sélectionné des liens pour les supprimer, nous pouvons appeler la boucle suivante pour les effacer :

    foreach($del_me as $url)

    {

    if (delete_bm($valid_user, $url))

    echo "<font color = '#005500'> <b> Vous avez bien supprimé le signet : </b> </font> &nbsp; . htmlspecialchars($url) . " . <BR/>" ;"

    else

    echo "Impossible de supprimer" . htmlspecialchars($url) . " . <BR/>" ;

    }

Comme vous pouvez le constater, la fonction delete_bm() s'occupe d'effacer les liens dans la base de données. Cette fonction est présentée dans le Listing 20.


Listing 20. - La fonction delete_bm() de url_fns.php - Cette fonction supprime un lien dans la liste de l'utilisateur :


Comme vous pouvez le voir, il s'agit également d'une fonction assez simple. Elle tente de supprimer une URL associée à un utilisateur dans la base de données. Il faut bien noter que nous nous contentons de supprimer l'URL qui est associée à l'utilisateur courant. Mais en aucun cas, nous ne pouvons pas insérer les mêmes URLs ou les mêmes sites favoris de chaque utilisateur, sinon, cela encombre la base de données. C'est pourquoi, s'il y a les mêmes URLs ou les mêmes sites favoris, ces derniers ne pourront pas être enregistrés dans notre base de données. Il est évident de bien comprendre ce principe.

La figure 11 montre un exemple du résultat obtenu.


Effacement_des_Sites_Favoris_de_Bookmarks.png


Nous avons présenté les fonctionnalités de base de l'application de PHP Bookmarks. Cependant, nous pouvons y apporter plusieurs améliorations :

  • Regrouper les sites favoris par sujets ;

  • Un lien "Ajouter cela à mes favoris" pour les recommandations ;

  • Des recommandations fondées sur les URLs les plus populaires de la base de données, ou sur un sujet particulier ;

  • Une interface d'administration pour configurer et administrer les utilisateurs et les sujets ;

  • Des techniques pour accélérer les recherches de sites intéressants, et pour les rendre plus intelligentes ;

  • Une fermeture de session automatique après une certaine durée ;

  • D'autres vérifications des entrées saisies par les utilisateurs.

Faites vos propres expériences ! Il s'agit de la meilleure manière d'apprendre et de comprendre !

Nous terminons ainsi cette quatorzième leçon et nous verrons dans la prochaine d'autres programmes ...










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.