Partage
  • Partager sur Facebook
  • Partager sur Twitter

espace membres : session

contenu de mes pages

    25 février 2006 à 14:27:32

    Bonjour, j'ai suivit le tutorial disponibles sur la création d'un espace membres simple, le script fonctionne correctement, j'ai recontré quelques problemes du fait que j'utilise des includes, le html intervient donc avant session_start(); enfin bref j'ai bidouillé sa fonctionne, voici mon probleme, du moins ma question :

    Je voudrais interdire l'accés à certaines de mes pages (dont le contenu= html, images et autres, bref des pages basiques), mais je ne voit pas comment faire, prenons l'exemple d'une page : informations.php

    Je créer ma page informations.php et je met mon contenu dedans (texte et autres), je met mon session_start(); au début de ma page de manière à obliger le visiteur à se logguer pour pouvoir visiter cette page, le probleme est que lorsque je me rend sur cette page, tout le contenu est affiché et le message indiquant qu'il faut être loggué apparait, en fait au final sa ne sert à rien >_<.

    Voila donc pour résumer, comment faire pour que le membre ait obligatoirement à se logguer pour voir le contenu d'une page ...

    Voila merci ^^o_O
    • Partager sur Facebook
    • Partager sur Twitter
      25 février 2006 à 14:33:32

      Avant d'afficher le contenu tu as vérifier si le membre était loggé ou pas? Faut que tu verifies si sa session existe et s'il elle existe, tu n'inclus pas pas le message comme quoi il faudrait etre loggé et dans le cas contraire, ben tu l'inclus
      • Partager sur Facebook
      • Partager sur Twitter
        25 février 2006 à 14:33:37

        Englobe tout ton code.

        If ( pass = ok )

        echo "Affichage de la page";

        Else

        echo "Affichage du forumulaire";
        • Partager sur Facebook
        • Partager sur Twitter
          25 février 2006 à 14:35:39

          Ben sur ton index, met $_SESSION['logged'] = TRUE; et dans toutes les pages de l'espace membre met un
          if( $_SESSION['logged'] = TRUE ) {
          /*
          ton code
          */

          } else {
          echo 'veuillez vous loguer';
          }

          Ah oui et au fait j'y pense, sy tu veux restreindre l'accès a certains comptes seulement, ajoute un champs "admin" dans ta table "membres" et, exemple, tu met 5 pour les super-admins, 4 pour les admins, 3 pour les modérateurs, 2 pour les super-users et 1 pour les users normaux, et dans tes pages restreintes tu met un

          if( $_SESSION['admin'] >= 3 ) {
          //Ton code
          } else {
          echo 'Vous n\'avez pas les permissions suffisantes';
          }
           

          Voila voila j'espère que ça t'aidera :)

          EDIT : Parse error... j'avais oublié l'anti slash devant l'apostrophe...
          • Partager sur Facebook
          • Partager sur Twitter
            25 février 2006 à 14:42:11

            Bonjour,

            Pour qu'une personne non logué ne puisse voir le contenu d'une page où il faut être logué, tu dois après session_start() vérifier si par exemple le pseudo du visiteur a été mis en session ce qui veut dire qu'il est logué ce qui donne par exemple :


            <?
            sesion_start();
            if (empty($_SESSION['pseudo'])) /*Si la personne n'est pas loggué*/
            {
            exit; /* on arête le chargement de la page ici */
            }
            else if (isset$_SESSION['pseudo'])) /* Si la personne est loggué */
            {
            /* il se passe rien on charge toute la page */
            }
            ?>


            <html>
            <body>
            Code html de ta page.....
            </body>
            </html>
            • Partager sur Facebook
            • Partager sur Twitter
              25 février 2006 à 14:55:18

              ok merci tout le monde je vais éssayer les différentes solutions :)
              • Partager sur Facebook
              • Partager sur Twitter
                25 février 2006 à 15:07:53

                Après relecture j'ai remarqué avoir fait deux trois erreur de syntaxe, voila le code parfaitement ecrit :


                <?
                session_start();
                if (empty($_SESSION['pseudo'])) /*Si la personne n'est pas loggué*/
                {
                exit; /* on arête le chargement de la page ici */
                }
                else if (isset($_SESSION['pseudo'])) /* Si la personne est loggué */
                {
                /* il se passe rien on charge toute la page */
                }
                ?>
                • Partager sur Facebook
                • Partager sur Twitter
                  25 février 2006 à 16:58:59

                  alors j'ai tester un peu, le exit fait bugger tout le design donc je me suis dis est-ce qu'a la place du exit lorsque la sessiosn est vide (empty) je ne peut pas rediriger vers la page de connexion plutot que de faire un quit ?

                  Si c'est le cas, quel est le bout de code ?
                  -> C'est bon j'ai trouvé.

                  D'autre part, j'ai ajouté un champs "admin" mais mon code est pas bon :/
                  Si quelqu'un peut me donner les modifs à faire :

                  Citation : session admin

                  <?php
                  session_start();
                  if (empty($_SESSION['admin'])) /*Si la personne n'est pas un admin alors redirigé vers erreur*/
                  {
                  header("location: index.php?page=erreur");
                  }
                  else if (isset($_SESSION['admin'] >= 3 ) { /* Si la personne est un admin de niveau 3*/
                  {
                  /* il se passe rien on charge toute la page */
                  }
                  ?>

                  • Partager sur Facebook
                  • Partager sur Twitter

                  espace membres : session

                  × 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