Partage
  • Partager sur Facebook
  • Partager sur Twitter

accés membre (php, phpbb, sql)

besoin d'aide

    25 mai 2007 à 10:22:31

    tout d'abord bonjour à vous et merci pour les tuto qui m'ont deja bien aidé...

    je suis confronté a un soucis je vous explique :

    j'ai monté un site web couplé à un forum phpbb le tout est 100% fonctionel. sur le site il y a un champ d'identification qui pointe sur la bdd du forum phpbb et qui sers a sa loger sur ce même forum.


    maintenant j'aimerais savoir comment sur ce meme site je peux limitter l'acces de certaines pages si le visiteur n'est pas loggé via le forum ?


    j'ai trouvé des "scripts" tout prets mais ceux ci ne sonts pas tres clairs et proposent deja la partie inscription que je posséde deja par le forum et je n'arrive pas a les adapter à mon soucis


    merci d'avance
    • Partager sur Facebook
    • Partager sur Twitter
      25 mai 2007 à 10:33:42

      Salut,
      Pour limiter l'accès de certaines pages j'aurai je pense utilisé les "sessions",ca permet de garder des données qui peuvent etre utilisé sur n'importe quel page,genre si :
      $_SESSION[‘logué’] = 1 alors il a accès certaine page et a pas d'autre.
      Mais perso je code plutôt intranet donc je sais pas si c'est la meilleur solution pour internet.

      J'espère t'avoir aidé un peu :D

      Cordialement,Tarsus
      • Partager sur Facebook
      • Partager sur Twitter
        25 mai 2007 à 10:37:22

        euh ... zero un jour zero toujours lol concretement ca se deroulerai comment au niveau de ma page ? je suis over debutant en php ^^

        merci d'avance
        • Partager sur Facebook
        • Partager sur Twitter
          25 mai 2007 à 10:46:39

          Je connais pas le fonctionnement des sessions phpbb, mais je peux te donner quelques pistes :

          - Tu crées une page vide, bidon (session.php par exemple)
          - Sur cette page :

          <?php
          session_start();
          echo '<pre>'.print_r($_SESSION,true).'</pre>';
          ?>


          - Tu exécutes cette page. Tu notes le contenu. (Probablement Array( ), mais pas forcément)
          - Tu te connectes sur ton forum phpBB. Puis tu réexécutes la page session.php. Cette fois, le résultat doit être différent.

          Si le résultat est le même dans les 2 cas, c'est probablement que ta session phpBB était déjà démarrée. Dans ce cas, déconnecte toi du forum et recommence.

          Ensuite, compare les deux résultats, lorsque tu es connecté et lorsque tu ne l'es pas. Trouve une variable de session qui te permet de déterminer à coup sûr si l'utilisateur est connecté ou non.

          Si ces pistes ne suffisent pas, copie/colle les deux tableaux de session ici, je regarderai.
          • Partager sur Facebook
          • Partager sur Twitter
            25 mai 2007 à 10:48:06

            Je t'explique en gros ;) :
            Sur la page d'index tu va faire un start_session()
            En suite dans la page ou tu veux qu'il se connecte si il se connecte tu crée une variable de session genre : $_SESSION[‘logué’] = 1 et donc pour chaque page tu vérifie si cette variable éxiste,si elle éxiste pas tu affiche "accés interdit" sinon tu affiche le truc normal ou sinon tu peux carément faire en sorte qu'il voit pas certain menu si il est pas logué et si il se déconnecte tu unset sa variable de session comme ca on revient au point de départ.
            En faite les sessions ta pas besoin de les passer entre chaque page avec des gets,toutes les pages peuvent y accéder directement(les variables de sessions sont stockées sur le serveur).
            Mais je sais pas si c'est faisable pour un zéro over débutant en php :p ,mais sur google tu trouveras surement plein d'explication sur comment marche les sessions.
            Qui ne tente rien n'a rien :D
            • Partager sur Facebook
            • Partager sur Twitter
              25 mai 2007 à 10:51:21

              merci a toi je vais tenter un coup de google a defaut de mieu je rame reelement sur ce coup la

              une derniere question ^^ si je te filais toutes les données serais tu capable de me faire eventuelement le code nessesaire ?
              sinon pas grave je vais insister et voir si j'arrive a créer moi même

              en tout cas merci a toi
              • Partager sur Facebook
              • Partager sur Twitter
                25 mai 2007 à 10:58:47

                Si tu parlais à moi non désolé je ne pourrai pas te faire le code mais sur internet il doit y avoir vraiment des tonnes d'info la dessus et puis peut etre y a t'il d'autre solution comme celle de notre collègue Veldryn,c'est sur ca va prendre plus de temps que si quelqu'un d'autre te le faisait et tu va peut etre ramer quelque temps mais une fois que tu aura trouvé tu saura le refaire pour le restant de ta vie :p:p

                Bonne chance

                Tarsus
                • Partager sur Facebook
                • Partager sur Twitter
                  25 mai 2007 à 11:03:01

                  Citation : Veldryn

                  - Tu crées une page vide, bidon (session.php par exemple)
                  - Sur cette page :

                  Code : PHP<?php
                  session_start();
                  echo '<pre>'.print_r($_SESSION,true).'</pre>';
                  ?>

                  - Tu exécutes cette page. Tu notes le contenu. (Probablement Array( ), mais pas forcément



                  voila ce que la page retourne

                  Warning: session_start() [function.session-start]: open(/mnt/116/sdb/8/1/test.c.a.p/sessions/sess_383e1d70725281f5a7c6c76043bf210b, O_RDWR) failed: No such file or directory (2) in /mnt/116/sdb/8/1/test.c.a.p/session.php on line 10

                  Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/116/sdb/8/1/test.c.a.p/session.php:9) in /mnt/116/sdb/8/1/test.c.a.p/session.php on line 10

                  Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/116/sdb/8/1/test.c.a.p/session.php:9) in /mnt/116/sdb/8/1/test.c.a.p/session.php on line 10

                  Array
                  (
                  )

                  Warning: Unknown(): open(/mnt/116/sdb/8/1/test.c.a.p/sessions/sess_383e1d70725281f5a7c6c76043bf210b, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

                  Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/mnt/116/sdb/8/1/test.c.a.p/sessions) in Unknown on line 0
                  • Partager sur Facebook
                  • Partager sur Twitter
                    25 mai 2007 à 11:07:39

                    Très amusant, ça ^^ Et ton phpbb, il marche bien (Pas de problème de connexion) ? :p Tu as mis le fichier session.php sur le même site ? Tu testes en local, ou chez ton hébergeur ?

                    Il faut une arborescence comme ça :

                    /session.php
                    /phpbb-12.1.18/... (tout le contenu de ton forum)

                    Pour le nom de répertoire du phpbb, j'ai mis au pif ^^
                    • Partager sur Facebook
                    • Partager sur Twitter
                      25 mai 2007 à 11:11:19

                      forum phpbb fonctionnel autant en inscription qu'en postage q'eun identification

                      arborescence du ftp

                      -racine
                      -pages du site a la racine
                      -dossier "forum"
                      -pages php du forum phpbb


                      et la page session.php a étée mise a la racine avec les pages du site
                      • Partager sur Facebook
                      • Partager sur Twitter
                        25 mai 2007 à 11:13:35

                        Très amusant :) (Sisi...)

                        Essaie de te connecter à phpbb, puis de revenir aussitôt après sur session.php...

                        Je comprends pas pourquoi les sessions marchent sur le forum et pas à la racine... Surtout que dans un code de 2 lignes aussi simples que ça, difficile de cacher un bug...
                        • Partager sur Facebook
                        • Partager sur Twitter
                          25 mai 2007 à 11:15:55

                          Warning: session_start() [function.session-start]: open(/mnt/116/sdb/8/1/test.c.a.p/sessions/sess_dde79516d438d1b8f1b53b675faa3c4f, O_RDWR) failed: No such file or directory (2) in /mnt/116/sdb/8/1/test.c.a.p/session.php on line 10

                          Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/116/sdb/8/1/test.c.a.p/session.php:9) in /mnt/116/sdb/8/1/test.c.a.p/session.php on line 10

                          Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/116/sdb/8/1/test.c.a.p/session.php:9) in /mnt/116/sdb/8/1/test.c.a.p/session.php on line 10

                          Array
                          (
                          )

                          Warning: Unknown(): open(/mnt/116/sdb/8/1/test.c.a.p/sessions/sess_dde79516d438d1b8f1b53b675faa3c4f, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

                          Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/mnt/116/sdb/8/1/test.c.a.p/sessions) in Unknown on line 0


                          résultat de la page aprés connection sur le forum connection reussie authentification effectuée
                          • Partager sur Facebook
                          • Partager sur Twitter
                            25 mai 2007 à 11:19:31

                            Devant autant de mauvaise volonté...

                            Dernière solution : Déplace session.php dans le dossier de phpbb... Et réréréessaie...
                            • Partager sur Facebook
                            • Partager sur Twitter
                              25 mai 2007 à 11:20:47

                              Warning: session_start() [function.session-start]: open(/mnt/116/sdb/8/1/test.c.a.p/sessions/sess_8864aafcc235bdfa60aa583d9b2311e6, O_RDWR) failed: No such file or directory (2) in /mnt/116/sdb/8/1/test.c.a.p/forum/session.php on line 10

                              Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/116/sdb/8/1/test.c.a.p/forum/session.php:9) in /mnt/116/sdb/8/1/test.c.a.p/forum/session.php on line 10

                              Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/116/sdb/8/1/test.c.a.p/forum/session.php:9) in /mnt/116/sdb/8/1/test.c.a.p/forum/session.php on line 10

                              Array
                              (
                              )

                              Warning: Unknown(): open(/mnt/116/sdb/8/1/test.c.a.p/sessions/sess_8864aafcc235bdfa60aa583d9b2311e6, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

                              Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/mnt/116/sdb/8/1/test.c.a.p/sessions) in Unknown on line 0



                              Même chose ...
                              • Partager sur Facebook
                              • Partager sur Twitter
                                25 mai 2007 à 11:25:34

                                Tu accèdes au forum et au fichier session via le même nom de domaine ? (La session est liée au nom de domaine). Je cherche, je cherche, mais j'ai beaucoup de mal à comprendre là... Surtout que ça ressemble à un problème de configuration :euh:
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  25 mai 2007 à 11:28:16

                                  oui exactement le meme nom de domaine tu desire l'adresse du forum afin de verifier son fonctionement ?
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    25 mai 2007 à 11:43:40

                                    Je veux bien, mais je doute pouvoir trouver quelque chose. Mais on sait jamais...
                                    • Partager sur Facebook
                                    • Partager sur Twitter

                                    accés membre (php, phpbb, sql)

                                    × 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