Protection page exclusif membre ( PHP )

Résolu/Fermé
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 - 10 juin 2009 à 20:09
 A.Nonymous - 11 juin 2009 à 01:23
Bonjour à tous,

J'ai besoin de vous car sur mon site j'ai enfin réussi à coder l'espace membre et le formulaire d'identification.
Je suis très très Happy

Mais je n'arrive pas à faire le blocage des pages d'espaces membres et autres.
J'ai fais un code pour ça et donc j'ai essayer sur ma page "Forum"
Et problème, connecté ou pas, on peut y accéder donc GROS PROBLEME !!

Voila mon code :
<?
session_start();
if(!isset($_SESSION['pseudo']))
{
echo '<p>Vous n\'etes pas autorise à acceder à cette zone.</p>';
}
?>


Quelqu'un peut me dire si le code est bon ou pas ?
Peut-être que je l'ai mal placé aussi. Je l'ai mis juste après la Balise <body> et avant le code (x)HTML.

Merci d'avance.

LelLex
A voir également:

5 réponses

Harricote Messages postés 417 Date d'inscription mercredi 21 janvier 2009 Statut Membre Dernière intervention 30 janvier 2011 41
10 juin 2009 à 20:23
Il n'y a rien d'écrit lorsque tu va sur la page et lorsque tu n'es pas connecté ?
0
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 112
10 juin 2009 à 22:34
Non.

Est-ce que mon code est bon ?
Et ou dois-je le placer ?

Merci
0
LelLex Messages postés 1628 Date d'inscription mercredi 18 février 2009 Statut Membre Dernière intervention 5 septembre 2012 112
10 juin 2009 à 22:35
Heu, je me suis fourvoyé !

Si il y a quelque chose d'écrit sur ma page. Il y a tout ma page en état normal, donc le code n'agit pas !
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
10 juin 2009 à 23:10
Au tout début de toutes les pages que tu veux "protéger" tu mets:

<?php
session_start();
if(!isset($_SESSION['pseudo']))
{
echo '<p>Vous n\'etes pas autorise à acceder à cette zone.</p>';
//ou à la place de ton echo tu peux renvoyer directement à la page d'authentification par exemple index.php
//attention il ne doit pa sy avoir de code html avant ce header
header("Location:index.php");
	exit;
}else{
?>
 // la tu mets la partie html de ta page

<?php
} //fin du else à la fin de la page
?>
0

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

Posez votre question
Il ne doit non seulement ne pas y avoir de code HTML avant le header mais pas de texte du tout !
A moins d'utiliser les fonctions ob_start et celles qui l'accompagne, tout "echo ...", tout caractère en dehors des balises PHP est envoyé directement au navigateur/client.
Dès lors que des données ont été envoyées au navigateur, utiliser la fonction "header" engendrera des erreurs. C'est d'ailleurs pour cela qu'il faut être attentif à ce qu'il n'y ait pas de sauts de lignes en début ou en fin de fichier, en dehors des balises PHP.
0