Probleme de session php

Résolu/Fermé
deathrace - 19 mai 2011 à 13:27
 deathrace - 19 mai 2011 à 18:13
Bonjour,

je n'arrive a garder les sessions sur mon site.
j'ai un fichier config.php, pour me connecter à la base de données, qui se termine par session_start();

lorsque je me connecte au site, il reconnait bien le mot de passe de l'utilisateur, ainsi que le pseudo. Je suis donc redirigé vers la bonne page.

C'est la que le problème arrive. J'ai mis en aut de ma page:
<?php
include('config.php');
if(!isset($_SESSION['name'])) { 
?>
 ICI TOUT LE CONTENU
<?php } else { accés interdit } ?>


Seulement, j'ai systématiquement accés interdit d'affiché. Ce qui est bizarre puisque ca fonctionne pour le reste du site.
Pourriez vous m'aider s'il vous plait?

Merci d'avance.


4 réponses

au debut de ton script rajoute: session_start();
exple:

<?php
session_start();
include('config.php');
if(!isset($_SESSION['name'])) { 
?>
 ICI TOUT LE CONTENU
<?php } else { accés interdit } ?>

0
verifie aussi que ton test est bien ce qui tu souhaite !isset($_SESSION['name'] c'est a dire que si la variable de session "name" n'existe pas tu affiche ton "contenu", si elle existe tu affiche "acces interdit".
si c pas ce comportement que tu souhaite obtenir alors il faudra changer ta condition en:
if(isset($_SESSION['name']) && !empty($_SESSION['name']))
0
Non rien y fais, mais merci quand meme pour cette réponse. J'aurais trouvé bisarre puisque session start se trouve justement dans config.php, et que j'appel bien config.php sur la page.
0
http://www.commentcamarche.net/forum/affich-22140173-probleme-de-session-php#2
0
Bon et bien, je ne sais pas pourquoi , je ne comprends pas vraiment, en tout cas ca fonctionne parfaitement.

if(isset($_SESSION['name']) && !empty($_SESSION['name']))


Merci beaucoup
0
Lambo31 Messages postés 23 Date d'inscription mardi 17 mai 2011 Statut Membre Dernière intervention 5 octobre 2011
19 mai 2011 à 13:57
Comme a précisé alphon5o c'est ton test qui ne va pas, tu testais ça :

Si ($_session['name'] N'EST PAS défini)

     Afficher (ICI TOUT LE CONTENU)


Sinon (si $_session['name'] EST défini)

      Afficher (accès interdit)
0
le truc c'est que ca marche pourtant bien les autres parties du site.

Merci a tous
0