Se connecter / S'enregistrer
Votre question

Menu visible que par membre

Tags :
  • Programmation
Dernière réponse : dans Programmation
28 Mai 2009 23:03:55

Salut a tous,

Alors voila, je vais vous exposez mon problème, mais avant tout je tiens a préciser que j'ai fais toutes les recherches possible pour essayer de trouver par moi même, le résultat est là avec moi, toujours pas trouvé :( 

Alors voila, je souhaite rajouter un menu ( sa c'est pas compliqué ^^ ) sur la droite de ma page, qui ne soit visible, et accessible uniquement par les membre de ma zone membre.

J'ai suivis les tuto du site du zero : XHTML/CSS ainsi qu'une partie du PHP / MySQL, et jusqu'à la, sa m'a beaucoup aidé, mais la je sèche ! :euh:

Dans mon raisonnement, j'ai voulu intégré le menu uniquement aux pages protégé, mais le problème c'est que si la personne qui si identifier sur la zone membre souhaite aller voir une page non protégé, le menu n'y sera pas présent puisqu'elle ne fera pas partit des pages ou j'aurais intégré le menu... J'ai installé ma zone membre de cette manière :

On arrive sur le site ( l'accueil => index.html )
menu gauche1 ( index.html, page1.html, page2.html, page3.html, page4.html)
menu gauche2 (page5.html, page6.html, page7.html, page8.html, page9.html)

menu droite1 (page10.html, page11.html, page12.html)
menu droite2 (page13.html, page14.html, page15.html, page16.html)

Toutes ces pages, ne sont pas protégées !

En revanche, j'ai créé un menu en haut, au dessus du corps, en dessous de la bannière, deux liens y sont présent :

Devenir membre ( inscription.php) et zone membre (loguee.php)

pour s'identifier, on va sur loguee.php, une fois l'identification lancée, redirigé vers l'accueil de la zone membre ( index.php [pas confondre avec l'accueil du site index.html])

pour se déconnecter, on appuis sur liens de déconnexion qui nous fait accéder a la page (logout.php) qui fait la redirection instantanée [on la voit pas en gros la page logout.php ^^] sur l'accueil du site ( index.html)

Voila, je vous est tout décris pour vous donner les détails, on ne sait jamais :-°

Si quelqu'un peut m'aider, avec une explication assez détaillé afin que je comprenne comment faire la prochaine fois :D  se sera vraiment sympa :) 

On m'a dit que cela fonctionnais avec les $_session...

<?php
if (isset($_SESSION['pseudo']))
{
// on affiche le menu pour les membres connectés
}
else {
// on affiche le menu pour les visiteurs
}
?>


Seulement je ne sais pas comment le rentrer dans la page... j'ai fais plusieurs test et il se trouve que la page bug, les menu s'étalent ect...


  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" rel="nofollow" target="_blank">http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd</a>">
  2. <html xmlns="<a href="http://www.w3.org/1999/xhtml" rel="nofollow" target="_blank">http://www.w3.org/1999/xhtml</a>" xml:lang="fr" >
  3. <head>
  4. <title>Bienvenue sur mon site !</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  6. <link rel="stylesheet" media="screen" type="text/css" title="Exemple" href="basecss.css" />
  7. </head>
  8. <body>
  9. <div id="en_tete">
  10. <!-- Ici on mettra la bannière -->
  11. <!-- en dessous de boutons, "devenir membre" " Zone membre" -->
  12. </div>
  13.  
  14.  
  15. <div id="menu_haut">
  16.  
  17. <div class="test">
  18.  
  19. <p align="center">
  20. </td>
  21. <font face="Arial, Helvetica, sans-serif" size="3" color="#FFFFFF">
  22. <strong>
  23. <font color="#FFB66C">|</font>  
  24. <a href="inscription.php" style="color: #FF0000">Devenir Membre</a> 
  25. <font color="#FFB66C">|</font>  
  26. <a href="loguee.php" style="color: #FF0000">Zone membre</a> 
  27. <font color="#FFB66C">|</font>  
  28. </strong></font></td>
  29.  
  30. </tr>
  31. </div>
  32. </div>
  33.  
  34. <div id="menu_gauche">
  35. <!-- Ici on mettra le menu gauche, c-a-d les differentes section -->
  36. <div class="element_menu">
  37. <h3>Nous</h3>
  38. <ul>
  39. <li><a href="index.html">Acceuil</a></li>
  40. <li><a href="page1.html">Nous</a></li>
  41. <li><a href="page2.html">Nos services</a></li>
  42. <li><a href="page3.html">Tarifs</a></li>
  43. <li><a href="page4.html">Sponsort</a></li>
  44. </ul>
  45. </div>
  46.  
  47. <div class="element_menu">
  48. <h3>Besoin d'aide ?</h3>
  49. <ul>
  50. <li><a href="page5.html">Logiciel</a></li>
  51. <li><a href="page6.html">Matériel</a></li>
  52. <li><a href="page7.html">Lexique</a></li>
  53. <li><a href="page8.html">Forum</a></li>
  54. <li><a href="page9.html">Nous Contacter</a></li>
  55. </ul>
  56. </div>
  57.  
  58.  
  59. </div>
  60.  
  61. <div id="menu_droite">
  62.  
  63. [color=#ff0000]<div class="element_menu_membre">
  64.  
  65.  
  66. <h3>Menu Membre</h3>
  67. <ul>
  68. <li><a href="page17.html">Tchat</a></li>
  69. </ul>
  70. </div>[/color]
  71. <!-- ici on mettra le menu droite, c-a-d les differents membres du site pour l'instant -->
  72. <div class="element_menu">
  73. <h3>Differents Agents</h3>
  74. <ul>
  75. <li><a href="page10.html">Thor</a></li> <!-- description de nos services et ou on les rends -->
  76. <li><a href="page11.html">Brico</a></li>
  77. <li><a href="page12.html">One</a></li>
  78. </ul>
  79. </div>
  80.  
  81. <div class="element_menu">
  82. <h3>Info</h3>
  83. <ul>
  84. <li><a href="page13.html">Les Dernières News</a></li>
  85. <li><a href="page14.html">Les Dernières Interventions</a></li>
  86. <li><a href="page15.html">Les Lieux d'Interventions</a></li>
  87. <li><a href="page16.html">Le pourcentage de réussite</a></li>
  88.  
  89. </ul>
  90. </div>
  91.  
  92. </div>
  93.  
  94. <div id="corps">
  95. <p><h2> Cette section du site n'est pas encore finit, et n'est donc pas disponible pour le moment.</h2></p>
  96. <p> Repassez dans quelques jours :) </p>
  97.  
  98.  
  99.  
  100.  
  101. </div>
  102.  
  103. <div id="pied_de_page">
  104. <p>Copyright "Thor's Company & Brico'Corporation" 2009, tous droits réservés
  105. <!-- Enfin, on mettra en bas de la page le nom de l'auteur, un copyright... -->
  106. </div>
  107.  
  108. </body>
  109. </html>

Autres pages sur : menu visible membre

29 Mai 2009 08:36:15

salut, tu dois simplemement vérifier dans tes pages non protégées que la session en cours est un membre et dans ce cas afficher le menu.
tu fais ton session start en haut puis au moment d'afficher le menu protégé tu fais un if(isset($_session['membre']))
afficher menu;

en ayant biensur créer tes variables de session avant, au moment de l'authentification
29 Mai 2009 11:42:40

Pourrais tu me montrer l'exemple en l'intégrant pour que le menu membre ( element_menu_membre) ne soit visible que par les membres ? ( j'avais voulu le mettre en rouge pour le voir mieux pour vous repérer mais sa n'a pas été pris en compte )
Parce que je ne te cache pas que je commence a en avoir marre :/  j'ai demandé sur plusieurs forum, j'ai eux les même explications, mais quand je le place, quedal x)
Le script "etale" mes menu droit sur la gauche et le liens "tchat" qui devrait n'etre visible que par un membre est visible par tous :/ 
29 Mai 2009 11:55:52

alors dans ta page qui vérifie la connexion d'un membre je suppose que tu crée des variables de sessions?
genre : si le pseudo et le passe sont bons, création d'une variable de session
$_SESSION['membre']='vrai';
et ensuite voila le code de ta page de menu :
  1. session_start();
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
  4. <head>
  5. <title>Bienvenue sur mon site !</title>
  6. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  7. <link rel="stylesheet" media="screen" type="text/css" title="Exemple" href="basecss.css" />
  8. </head>
  9. <body>
  10. <div id="en_tete">
  11. <!-- Ici on mettra la bannière -->
  12. <!-- en dessous de boutons, "devenir membre" " Zone membre" -->
  13. </div>
  14.  
  15.  
  16. <div id="menu_haut">
  17.  
  18. <div class="test">
  19.  
  20. <p align="center">
  21. </td>
  22. <font face="Arial, Helvetica, sans-serif" size="3" color="#FFFFFF">
  23. <strong>
  24. <font color="#FFB66C">|</font>  
  25. <a href="inscription.php" style="color: #FF0000">Devenir Membre</a> 
  26. <font color="#FFB66C">|</font>  
  27. <a href="loguee.php" style="color: #FF0000">Zone membre</a> 
  28. <font color="#FFB66C">|</font>  
  29. </strong></font></td>
  30.  
  31. </tr>
  32. </div>
  33. </div>
  34.  
  35. <div id="menu_gauche">
  36. <!-- Ici on mettra le menu gauche, c-a-d les differentes section -->
  37. <div class="element_menu">
  38. <h3>Nous</h3>
  39. <ul>
  40. <li><a href="index.html">Acceuil</a></li>
  41. <li><a href="page1.html">Nous</a></li>
  42. <li><a href="page2.html">Nos services</a></li>
  43. <li><a href="page3.html">Tarifs</a></li>
  44. <li><a href="page4.html">Sponsort</a></li>
  45. </ul>
  46. </div>
  47.  
  48. <div class="element_menu">
  49. <h3>Besoin d'aide ?</h3>
  50. <ul>
  51. <li><a href="page5.html">Logiciel</a></li>
  52. <li><a href="page6.html">Matériel</a></li>
  53. <li><a href="page7.html">Lexique</a></li>
  54. <li><a href="page8.html">Forum</a></li>
  55. <li><a href="page9.html">Nous Contacter</a></li>
  56. </ul>
  57. </div>
  58.  
  59.  
  60. </div>
  61.  
  62. <div id="menu_droite">
  63.  
  64. /************************ici espace membre*********************/
  65. <?php
  66. if($_SESSION['membre']=='vrai')
  67. { ?>
  68. [color=#ff0000]<div class="element_menu_membre">
  69.  
  70.  
  71. <h3>Menu Membre</h3>
  72. <ul>
  73. <li><a href="page17.html">Tchat</a></li>
  74. </ul>
  75. </div>[/color]
  76. <!-- ici on mettra le menu droite, c-a-d les differents membres du site pour l'instant -->
  77. <div class="element_menu">
  78. <h3>Differents Agents</h3>
  79. <ul>
  80. <li><a href="page10.html">Thor</a></li> <!-- description de nos services et ou on les rends -->
  81. <li><a href="page11.html">Brico</a></li>
  82. <li><a href="page12.html">One</a></li>
  83. </ul>
  84. </div>
  85. <?php
  86. } //l'espace membre est fini ici
  87. ?> <div class="element_menu">
  88. <h3>Info</h3>
  89. <ul>
  90. <li><a href="page13.html">Les Dernières News</a></li>
  91. <li><a href="page14.html">Les Dernières Interventions</a></li>
  92. <li><a href="page15.html">Les Lieux d'Interventions</a></li>
  93. <li><a href="page16.html">Le pourcentage de réussite</a></li>
  94.  
  95. </ul>
  96. </div>
  97.  
  98. </div>
  99.  
  100. <div id="corps">
  101. <p><h2> Cette section du site n'est pas encore finit, et n'est donc pas disponible pour le moment.</h2></p>
  102. <p> Repassez dans quelques jours :) </p>
  103.  
  104.  
  105.  
  106.  
  107. </div>
  108.  
  109. <div id="pied_de_page">
  110. <p>Copyright "Thor's Company & Brico'Corporation" 2009, tous droits réservés
  111. <!-- Enfin, on mettra en bas de la page le nom de l'auteur, un copyright... -->
  112. </div>
  113.  
  114. </body>
  115. </html>

donc au début un session_start() pour récupérer le contenu de sessions.
puis au moment d'afficher le menu membre tu vérifie si c'est bien un membre qui est connecté par if($_SESSION['membre']=='vrai')

tout ça c'est en supposant que tu crée bien la variable lors de l'identification du mec dans login.php ou autre
29 Mai 2009 12:02:41

Dans ma page inscription.php j'ai un if($_SESSION['session']) qui elle vérifie si on est pas déjà connecté et donc qui n'affiche pas le formulaire d'inscription.

Sur ma page loguee.php ( la page ou l'on s'identifie) j'ai également cette même variable qui est juste après le session_start(), donc cela doit etre elle qui vérifie si on est bien un membre, ou non. je vais tester ta page, et essayer de l'adapter voir si cela fonctionne correctement. je te tiens au courant !

Merci.
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS