Problème de création espace membre

Fermé
azert59 Messages postés 4 Date d'inscription mardi 21 mai 2013 Statut Membre Dernière intervention 22 mai 2013 - 21 mai 2013 à 20:38
Mickael86480 Messages postés 660 Date d'inscription vendredi 28 mai 2010 Statut Membre Dernière intervention 11 mars 2021 - 22 mai 2013 à 12:25
Bonsoir tout le monde j'espère que ca va ?

alors voila je vous présente mon problème.Je doit créer un site web pour mon bac jusque la tout vas bien mais je bloque sur la partie création d'un espace membre .J'ai créé un formulaire d'inscription et de connexion qui fonctionne très bien . Quand je me connecte ca affiche "bienvenue login" et en dessous le bouton déconnexion . mais une fois que je change de page dans mon site mon login disparaît je ne vois plus le bienvenue et le bouton déconnexions .
Donc ma question est comment dois-je faire pour qu'il reste affiché sur l'ensemble de mon site ?
Merci a vous pour vos réponses les amis
A voir également:

5 réponses

Utilisateur anonyme
21 mai 2013 à 21:54
Bonsoir, il faut utiliser les variables de session


https://openclassrooms.com/fr/courses
0
azert59 Messages postés 4 Date d'inscription mardi 21 mai 2013 Statut Membre Dernière intervention 22 mai 2013
22 mai 2013 à 11:03
merci lobotofix pour le lien il m'a été d'une tres grande utilité
0
Mickael86480 Messages postés 660 Date d'inscription vendredi 28 mai 2010 Statut Membre Dernière intervention 11 mars 2021 35
Modifié par Mickael86480 le 22/05/2013 à 01:00
Essai un truc du style :

Dans la page de connexion

<?php 
session_start(); //On démarre la session AVANT d'écrire du code HTML
?>
<HTML>
     .
     .
     .
<BODY>
<?php
$login = $_POST['login_connexion'];
//Si login = login de base de données
$_SESSION['pseudo']=$login;
?>
</BODY>
</HTML> 


Dans la page d'accueil après connexion = ok

<?php 
session_start(); //On démarre la session AVANT d'écrire du code HTML
?>
<HTML>
     .
     .
     .
<BODY>
<?php
$log=$_SESSION['pseudo'];
echo'Bonjour '.$log.'';
?>
</BODY>
</HTML> 


Je précise que si ton site est mis sur internet, tu dois créer un dossier "session" pour que cela fonctionne.

Voilà, après il s'agit d'un exemple à toi de l'améliorer.
0
azert59 Messages postés 4 Date d'inscription mardi 21 mai 2013 Statut Membre Dernière intervention 22 mai 2013
22 mai 2013 à 11:02
merci j'ai réussit mais le soucis c'est que des que je me deconnécte et change de page ca me met toujours bienvenue alors que je me suis déconnécté aevc un jolie message d'erreur que dois-je faire pour que ce message ne s'affiche que quand je suis connécté a mon espace membre ? merci mickael
0
Mickael86480 Messages postés 660 Date d'inscription vendredi 28 mai 2010 Statut Membre Dernière intervention 11 mars 2021 35
22 mai 2013 à 12:07
Comme le dit Loboto, tu peux utiliser session_destroy() à la fin, mais attention il te faut être sûr que la page ne te redirige pas vers une autre page destinée aux membres.
0
Utilisateur anonyme
22 mai 2013 à 11:33
es ce que t'es servis de session_destroy();

il faut que ton bouton déconnexion tènement sur une page qui détruit les sessions et après qui te redirige vers le site. On peut peut être faire autrement mais moi j'ai toujours fais comme ça.


ca pourrait ressembler à cela :

<?php 
session_start();


?>
<!DOCTYPE html>
<html>
	<head>
		<title>déconnexion</title>
		<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
		<meta http-equiv="refresh" content="3;index.php" />
		<style type="text/css">
			p {
				text-align: center;
				font-size: 2em;
				
			}
		</style>
	</head>
	<body>
		<?php 
		if (isset($_SESSION['pseudo'])) {

			$_SESSION = array();
			session_destroy();

			echo '<p>Vous êtes maintenant <strong>déconnecté !</strong><br />
				Si votre navigateur ne vous redirige pas vers le site <a href=\'index.php\'>Cliquez ici</a></p>';
		} else {
			echo '<p>Vous n\'étiez pas <strong>connecté !</strong><br />
			Si votre navigateur ne vous redirige pas vers le site <a href=\'index.php\'>Cliquez ici</a></p>';

		}
		
		?>
	</body>
</html>



c'est un exemple
0
azert59 Messages postés 4 Date d'inscription mardi 21 mai 2013 Statut Membre Dernière intervention 22 mai 2013
22 mai 2013 à 12:06
j'ai un fichier déconnexion avec sessions destroy , quand je click, sur déconnexion aucun problème ca me déconnecte .
mais le problème c'est qu'une fois déconnecté , le bouton déconnxion est toujours visible avec en plus un message d'erreur du au code suivant qui n'est plus valable une fois la session fermé .

bienvenue <?php echo $_SESSION['prenom']; ?> !

voicin le message d'erreur
bonjours Notice: Undefined index: prenom in


merci
0
Mickael86480 Messages postés 660 Date d'inscription vendredi 28 mai 2010 Statut Membre Dernière intervention 11 mars 2021 35
22 mai 2013 à 12:25
Si bonjours Notice: Undefined index: prenom in, cela signifie que la variable session est vide, le destroy fonctionne donc, et il faut faire un test pour voir s'il y a quelque chose dans session. Un exemple :

if($_SESSION['prenom']) echo'bonjour '.$_SESSION['prenom'];.'';
else echo'bonjour inconnu';
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
je pense que vous devriez faire apparaitre ce bouton déconnexion seulement si les variables de session sont actives.

si vos session sont pour le pseudo par exemple.

<?php 
       if (isset($_SESSION['pseudo'])) {
        echo '<p>Bienvenue ' . $_SESSION['pseudo'] .' pour te déconnecter <a href=\'deconnexion.php\'> clique ici</a></p>'  ;
       }
       
      ?>




linux est le noyaux et Windows les pépins
0