Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/10/2011, 10h47   #1
Futur Membre du Club
 
Inscription : avril 2005
Messages : 90
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 90
Points : 16
Points : 16
Envoyer un message via MSN à xboulney
Par défaut Menu varie selon statut

Bonjour à tous et merci à ceux qui prendront le temps de me lire.

Je suis face à un souci que je n’arrive pas à résoudre.

J’ai deux includes pour mon menu.
Le premier qui s’affiche si l’utilisateur n’est pas connecté :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
<div id="topmenu">
     <ul class="userbar">
           <li>
		<?php        
			echo $menu;
		?>
	   </li>
     </ul>
     <ul class="userbarlog">
         <li><a href="register.php"> Register</a></li>
         <li><a href="login.php">Login</a></li>
     </ul>
</div>
et le deuxieme si l’utilisateur est connecté :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
<div id="topmenu">
	<ul class="userbar">
		<li>
		     <?php        
			echo $menu;
                     ?>
		</li>
	</ul>
	<ul class="userbarlog">
		<li><a href="deconnexion.php">Logout</a></li>
		<li>Welcome <?php echo stripslashes(htmlentities(trim($_SESSION['username']))); ?> !</li>
	</ul>
</div>
Comme vous le voyez, seul le deuxième <ul> varie en fonction du statut.
J’aimerai inclure une fonction qui me permette de réunir les deux en 1 en fonction du statut.
Les deux includes sont actuellement appelés de la façon suivante dans chacune des pages en fonction du statut :
Code :
1
2
3
<div id="topmenu_bkgd">
	<?php include("incl.userbar.php"); ?>	
</div>
lorsque le user n’est pas connecté…

et
Code :
1
2
3
<div id="topmenu_bkgd">
	<?php include("incl.user_connected.php"); ?>	
</div>
lorsque le user est connecté..

Merci à ceux qui prendront le temps de me répondre.
xboulney est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/10/2011, 19h37   #2
Invité de passage
 
Homme Louis Brabant
Inscription : juillet 2011
Messages : 24
Détails du profil
Informations personnelles :
Nom : Homme Louis Brabant
Localisation : France, Nord (Nord Pas de Calais)

Informations forums :
Inscription : juillet 2011
Messages : 24
Points : 4
Points : 4
Envoyer un message via MSN à deathart Envoyer un message via Skype™ à deathart
Alors moi j'utilise simple les sessions !

dans ton index.php :

Code :
1
2
3
4
 
<?php
session_start();
?>
Ensuite Tu verifie si une session (imaginons la session de l'id du compte) :

Code :
1
2
3
4
5
6
7
8
9
10
11
 
if (isset($_SESSION['id']) && !empty($_SESSION["id"])) { 
 
	echo ('Menu du membre connécté'); 
 
}
else {
 
	echo ('Menu du membre non connécté'); 
 
}
Voila espérant t'aidez si besoin je suis la
deathart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/10/2011, 17h56   #3
Futur Membre du Club
 
Inscription : avril 2005
Messages : 90
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 90
Points : 16
Points : 16
Envoyer un message via MSN à xboulney
Par défaut Menu selon statut

Merci de ton aide mais je n'y arrive pas.

J'ai essayé comme tu le dis, en le modifiant quelques peu (ou plutôt en essayant...) mais ma barre de menu ne s'affiche plus du tout.

Voila ce que j'ai fait... Vous moquez pas je suis débutant...
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
session_start();
if (isset($_SESSION['id']) && !empty($_SESSION["id"])) {  
	echo ('incl.menu_private.php'); 
				 ('incl.user_connected.php');
		$menu = affiche_menu();
		}
		else { 
			echo ('incl.menu.php'); 
						 ('incl.userbar.php');
				$menu = affiche_menu();
}
?>
Merci à ceux qui me répondront.
xboulney est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/10/2011, 18h04   #4
Invité de passage
 
Homme Louis Brabant
Inscription : juillet 2011
Messages : 24
Détails du profil
Informations personnelles :
Nom : Homme Louis Brabant
Localisation : France, Nord (Nord Pas de Calais)

Informations forums :
Inscription : juillet 2011
Messages : 24
Points : 4
Points : 4
Envoyer un message via MSN à deathart Envoyer un message via Skype™ à deathart
Citation:
Envoyé par xboulney Voir le message
Merci de ton aide mais je n'y arrive pas.

J'ai essayé comme tu le dis, en le modifiant quelques peu (ou plutôt en essayant...) mais ma barre de menu ne s'affiche plus du tout.

Voila ce que j'ai fait... Vous moquez pas je suis débutant...
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
session_start();
if (isset($_SESSION['id']) && !empty($_SESSION["id"])) {  
	echo ('incl.menu_private.php'); 
				 ('incl.user_connected.php');
		$menu = affiche_menu();
		}
		else { 
			echo ('incl.menu.php'); 
						 ('incl.userbar.php');
				$menu = affiche_menu();
}
?>
Merci à ceux qui me répondront.

Alors je t'explique si tu veux afficher des variables ou autre d'un autre fichier tu fait include regarde :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
<?php
session_start();
if (isset($_SESSION['id']) && !empty($_SESSION["id"])) {  
	include ('incl.menu_private.php'); 
	include ('incl.user_connected.php');
	affiche_menu();
}
else { 
include ('incl.menu.php'); 
include ('incl.userbar.php');
affiche_menu();
}
?>
Par contre pourquoi fait tu de la poo alors que tu te dit debutant ?
deathart est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/10/2011, 23h26   #5
Futur Membre du Club
 
Inscription : avril 2005
Messages : 90
Détails du profil
Informations forums :
Inscription : avril 2005
Messages : 90
Points : 16
Points : 16
Envoyer un message via MSN à xboulney
Par défaut Menu varie selon statut.

Salut et merci à toi de prendre du temps pour me répondre.

D'abord, je fais çà pour apprendre et pour mener un projet qui me tient à cœur.
J'ai certaines bases en HTML mais je pêne pour le php. Je me donne du mal... mais j'ai mal !!!

Concernant mon menu, je n'ai pas de message d'erreur mais rien ne s'affiche.
Je me dit, donc, que le problème doit venir du code de la fonction "affichemenu" qui est le suivant :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
	<?php
    function affiche_menu()
    {
        // tableaux contenant les liens d'accès et le texte à afficher
        $tab_menu_lien = array( "index_connected.php", "services.php", "account.php", "news.php", "#", "#" );
        $tab_menu_texte = array( "Home", "Services", "Account", "News", "Contact", "How to" );
 
        // informations sur la page
        $info = pathinfo($_SERVER['PHP_SELF']);
 
        $menu_private = "\n<div id=\"menu\">\n    <ul class=\"onglets\">\n";
 
 
 
        // boucle qui parcours les deux tableaux
        foreach($tab_menu_lien as $cle=>$lien)
        {
            $menu_private .= "    <li";
 
            // si le nom du fichier correspond à celui pointé par l'indice, alors on l'active
            if( $info['basename'] == $lien )
                $menu_private .= " class=\"active\"";
 
            $menu_private .= "><a href=\"" . $lien . "\">" . $tab_menu_texte[$cle] . "</a></li>\n";
        }
 
        $menu_private .= "</ul>\n</div>";
 
        // on renvoie le code xHTML
        return $menu_private;        
    }
	?>
Je ne vois pas comment faire... Merci de ton attention.
xboulney est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/10/2011, 07h04   #6
Invité de passage
 
Homme Louis Brabant
Inscription : juillet 2011
Messages : 24
Détails du profil
Informations personnelles :
Nom : Homme Louis Brabant
Localisation : France, Nord (Nord Pas de Calais)

Informations forums :
Inscription : juillet 2011
Messages : 24
Points : 4
Points : 4
Envoyer un message via MSN à deathart Envoyer un message via Skype™ à deathart
Bon pour ta fonction, moi et la poo je suis une vrai merde :p

Sinon je me demande, quand le membre ce connecte, tu as bien fait la session id ???

Tu fait sa
Code :
"$_SESSION["id"] = LID DU COMPTE;"
Quand la personne ce co, dans ton script de connexion tu fait ca
deathart est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h54.


 
 
 
 
Partenaires

Hébergement Web