Partage
  • Partager sur Facebook
  • Partager sur Twitter

Création d'un espace membre

Questions et demande d'aide

    16 février 2006 à 3:32:39

    Bonsoir à tous,

    Voila je viens juste de finir tout le cours sur le PHP, cependant je trouve qu'il manque quelques petits 'trucs' pour combler le tout, surtout au niveau des sessions et cookies, d'apres moi il manque des informations, ou exemple par exemple sur un script de connexion de membre à un site, m'enfin pas grave.

    V
    oila, ayant fini les cours, je me suis dis que je pouvez commencé à créer mon site (Puisque pour le moment je me contente de modifié des cms), donc voila je voudrais faire un espace membre, avec des permissions (Affichage de tel ou tel page suivant les droits du membre), cependant je n'arrive pas à faire le plan, par ou commencer et autre.

    Pour moi, ce qui est le plus dur c'est de faire le script de connexion, et de renvoyé l'utilisateur sur compte/index.php avec l'affichage des catégories qu'il à besoins avec les droits que je lui est mit.

    Est-il possible de m'expliquer comment ce passe la procédure de création d'un petit espace membre, je sais que ça doit être du boulot, m'enfin pour le moment je voudrais 'juste' savoir cela:

    - Crypté le mot de passe en md5 à l'inscription
    - Script de connexion d'un membre au site, avec décryptage du mdp.
    - Vérifié si l'utilisateur est connecté ou non (Pour éviter qu'il se relogue à chaque visite)
    - Affichage de tel ou tel rubrique suivant sont degrés de permissions

    Voila, pour moi c'est les bases essentiels pour la conception d'un site, malheureusement les sites que je trouve sur internet (www.php.net/manual/fr/ ou bien www.phpdebutant.org) ne sont pas aussi bien que 'Le site du Zéro' et je n'adhère pas à leurs méthodes d'apprentissage. Je suis habitué à mieux.

    Donc voila, je remercie à l'avances les membres qui voudront m'aidé (Si il y en a)

    Bonne nuit,
    Ciao.

    J'ai encore beaucoup de questions, mais bon je n'est pas envi de bombarder comme ça d'un seul coup.
    • Partager sur Facebook
    • Partager sur Twitter
      16 février 2006 à 6:44:38

      Bonjour,

      Citation


      - Crypté le mot de passe en md5 à l'inscription


      Il suffit de faire $mdp = md5($_POST['mot_de_passe_ecrit_par_le_futur_membre']);

      Citation


      - Script de connexion d'un membre au site, avec décryptage du mdp.


      Pas besoin de décrypter; tu regardes si le mot de passe dans la table (crypté, donc) est égal à md5($_POST['le_mot_de_passe_ecrit_par_le_membre'])

      Citation


      - Vérifié si l'utilisateur est connecté ou non (Pour éviter qu'il se relogue à chaque visite)


      Avec des cookies

      Citation


      - Affichage de tel ou tel rubrique suivant sont degrés de permissions


      Tu fais un champs `permissions` dans ta table, et tu y mets des chiffres (1, 2, 3, 4, etc.) suivant leur degrès de permission. Après, il suffit de faire des conditions pour l'afficher :) .

      ++
      aimak
      • Partager sur Facebook
      • Partager sur Twitter
        16 février 2006 à 6:49:21

        Pour crypter le mot de passe: $mot_passe = md5($mot_passe);
        Pour le décrypter je ne sais pas, ce serait $mot_passe = md5($mot_passe); aussi?..
        Pour éviter qu' il se relogue, faut un cookies..
        Ben pour ça je pense qu' il faut creer un champ "rang" par exemple, par défault 0 (membre),1 pour modérateur et 2 pour administrateur et tu affiches tout selon la valeur.. enfin jamais essayé.

        Edit: Grilled
        • Partager sur Facebook
        • Partager sur Twitter
          16 février 2006 à 8:18:32

          md5 ne CRYPTE PAS il hasche.
          Donc md5 ne se DECRYPTE PAS.

          :p

          Pour tester si le mot de passe tapé par le membre est bon, il faut lui appliquer md5 aussi et vérifier si il coincide avec celui sur la BDD (comme dit le aimak :D )
          • Partager sur Facebook
          • Partager sur Twitter
            16 février 2006 à 21:06:27

            Citation : aimak

            Il suffit de faire $mdp = md5($_POST['mot_de_passe_ecrit_par_le_futur_membre']);



            Merci bien, maintenant je comprend bien, ça va être un peut plus facile ;-)

            Citation : aimak

            - Vérifié si l'utilisateur est connecté ou non (Pour éviter qu'il se relogue à chaque visite)

            Avec des cookies



            Le seul problème c'est que je n'est pas trop bien compris comment se passé l'utilisation des cookies, Voila, je sais qu'il faut écrire le cookies, mais que dois-je mettre dedans ? le nom d'utilisateur ainsi que sont mot de passe ? ou bien autre chose ?

            Citation : aimak

            Tu fais un champs `permissions` dans ta table, et tu y mets des chiffres (1, 2, 3, 4, etc.) suivant leur degrés de permission. Après, il suffit de faire des conditions pour l'afficher :) .



            Le seul petit problème, c'est que je n'est pas que 3 type de permissions, mais comment afficher tel ou tel informations en sachant le rang du membre ? M'enfin cela n'est pas si important que ça, je préfère me focaliser sur les SESSION et les cookies avant d'entreprendre autre chose.

            Donc voila, est-ce que quelque pourrais m'expliquer, par exemple si le membre n'est pas connecter alors afficher le script de connexion, et si il est connecté mais qu'il n'à pas les permissions, alors afficher un message comme quoi il n'a pas les droits d'accès.

            Le plus important pour moi est de savoir reconnaitre si le membre utilise un cookies ou une session, alors dans se cas il est automatiquement loguer.

            Je doit vous paraitre 'un peut' lourd, m'enfin je suis vraiment désolé, autant j'ai très bien compris les regex, et les autres, mais alors les SESSION et Cookies, je n'est pas encore très bien assimilé leur mode de fonctionnement.

            Merci bien.
            • Partager sur Facebook
            • Partager sur Twitter
              16 février 2006 à 21:52:43

              Salut,

              En faite tu veux qu'on t'éxplique le déroulement du script ?

              Citation : citation

              - Crypté le mot de passe en md5 à l'inscription



              Comme l'on dit les autres:
              <?PHP
              $mot_de_passe_entre_par_lutilisateur = htmlentities($_POST['mot_de_passe_entre_par_lutilisateur']);

              //Criptage
              $mot_de_passe_a_rentrer_dans_la_bdd = md5($mot_de_passe_entre_par_lutilisateur);

              //Decriptage
              //Quand l'utilisateur voudra le loguer il faudra faire l'inverse en criptant le mot de passe qu'il a entre et en le comprant avec celui de la BDD !
              ?>


              Citation : Citation

              - Vérifié si l'utilisateur est connecté ou non (Pour éviter qu'il se relogue à chaque visite)



              COOKIE

              Pour ecrir un cookie tu fais:
              <?PHP
              setcookie('pseudo', $pseudo, $timestamp_expire); // On écrit un cookie "pseudo"
              ?>


              Voila $pseudo c'est le pseudo de l'utilisateur et $timestamp_expire c'est la date où le timestamp expirera !

              Sinon pour les permissions tu peux faire une Session avec dedans écrit le grade du membre.

              Par exemple:
              0 = Membre n'ayant pas validé son compte
              1 = Membre2 = Modérateur
              3 = Administrateur

              Ensuite tu fais des conditions:
              <?PHP
              if($_SESSION['grade'] = 0)
              {
              echo'Il faut valider ton compte';
              }
              elseif($_SESSION['grade'] = 1)
              {
              echo'Acceder a son profil';
              }
              elseif($_SESSION['grade'] = 2)
              {
              echo'Acceder au PC Modération';
              }
              else
              {
              echo'Acceder au PC admin';
              }
              ?>


              Voila j'ai fais un truc ULTRA simplifié mais croies moi sa marche comme sa !

              A+ :)
              • Partager sur Facebook
              • Partager sur Twitter
                16 février 2006 à 22:07:41

                En fait le truc c'est que tu voudrais qu'on te passe ton truc mais il y'a déjà un tuto partie "Vos Tutos" :)

                Edit : je m'excuse si j'ai pu parraitre méchant ;)
                • Partager sur Facebook
                • Partager sur Twitter
                  16 février 2006 à 22:11:00

                  Citation : Jojo


                  <?PHP
                  $mot_de_passe_entre_par_lutilisateur = htmlentities($_POST['mot_de_passe_entre_par_lutilisateur']);

                  //Criptage
                  $mot_de_passe_a_rentrer_dans_la_bdd = md5($mot_de_passe_entre_par_lutilisateur);

                  //Decriptage
                  //Quand l'utilisateur voudra le loguer il faudra faire l'inverse en criptant le mot de passe qu'il a entre et en le comprant avec celui de la BDD !
                  ?>


                  Voila $pseudo c'est le pseudo de l'utilisateur et $timestamp_expire c'est la date où le timestamp expirera !



                  Hum, ça je comprend un peut mieux sur l'écriture d'un cookie, maintenant comme savoir si le membre est connecté quand il reviens sur le site ? avec le cookie surment ? mais bon nous avons besoins que tu pseudo ? pas du mdp ?

                  Est-ce que c'est avec le cookie que je vais écrire les sessions ? ou bien c'est à part ?

                  Merci.

                  Edit: Pour manu_moummouth, non pas du tout, pas du tout, je ne veux pas que vous me fassiez mon 'truc mais simplement de l'aide, ça ne servirais à rien d'avoir le code directement si je ne comprend rien, moi je veut juste savoir me servir des Session et des cookies à la fin de ce post, c'est tout.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    19 février 2006 à 15:02:16

                    Voila, j'ai compris comment créer les cookies, ainsi que la connexion d'un membre, mais bon ce que j'ai du mal encore à comprendre, c'est comment vérifier que le membre est connecté ? on vérifie si une session existe non ? ou si un cookie existe ?
                    Si il existe on lui affiche la page avec en haut, par exemple Bonjours $Pseudo et si il n'est pas connecté on lui affiche la page de connexion ?

                    C'est surtout cette étape que j'ai du mal à assimilé, donc un peut d'aide me ferai du bien.
                    • Partager sur Facebook
                    • Partager sur Twitter
                      19 février 2006 à 16:54:23

                      On test si la $_SESSION['pseudo'] est crée !

                      Si OUI sa veut dire qu'il est connecté !

                      Maintenant je te conseil de faire une fonction qui test si le membre a un $_COOKIE['pseudo'] et un $_COOKIE['mot_de_passe'] (que tu auras hasché) ensuite tu fais une requête voir si le mot de passe correspond bien au pseudo, et si c'est le cas tu créer ta $_SESSION['pseudo'] comme sa cela voudra dire que le membre est connecté (et il sera connecté automatiquement a chaque visites !)

                      Voila j'éspère t'avoir aidé !

                      A+ :)
                      • Partager sur Facebook
                      • Partager sur Twitter
                        19 février 2006 à 22:29:16

                        Ouf, je susi rassuré, ça fait plaisir de savoir que tu pense comme ça :)

                        Surtout que les tutos du SdZ sont très facils !
                        • Partager sur Facebook
                        • Partager sur Twitter

                        Création d'un espace membre

                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                        • Editeur
                        • Markdown