probleme session

Mammouth du PHP | 536 Messages

19 juin 2007, 15:07

Bonjour,

pourquoi est-ce que je n'arrive pas à detérminer quelle session est ouverte ?

j'ai deux fichiers, un qui permet l'identification et un qui vérifie quel session est ouverte pour donner accès à telle ou telle partie du fichier.

voici mes codes :

foreach($xmlroot->childNodes as $info_user)
      {        
          if($info_user->nodeType== XML_ELEMENT_NODE)
          {
            //on compare les identifiants avec ceux inscrits dans le fichier xml
            if ( ($identifiant == ($info_user->getAttribute('name'))) && ($mdp == ($info_user->getAttribute('mdp'))) )
            {
              session_name($info_user->getAttribute('droit'));
              session_start(session_name());
              $session = $info_user->getAttribute('droit');
              if ($session == 'sadmin')
              {
                $_SESSION['sadmin']= $session ;
                header("Location: home.php");
              }
              elseif ($session == 'admin')
              {
                $_SESSION['admin']= $session ;
                header("Location: home.php");
              }
            }
            else
            {
              require ("index.php"); // l'utilisateur n'a pas été reconnu, on redirige vers le formulaire de connexion
            }
          }
      }
et le fichier home.php :
<?php
session_start();

//on vérifie que l'utilisateur s'est bien identifié
if (!isset($_SESSION['admin']))
{
echo "admin";
}
elseif  (!isset($_SESSION['sadmin']))
{
echo "super admin";
}

?>
Merci


ok alors, c'est bon j'ai trouvé. Le problème venait du fait que je donnais come nom à ma session le nom d'un attribut d'un fichier xml.
Désormais, je lui ait donné un nom fixe et cela marche.
if ( ($identifiant == ($info_user->getAttribute('name'))) && ($mdp == ($info_user->getAttribute('mdp'))) )
            {
              session_name('administration');
              session_start(session_name());
              $session = $info_user->getAttribute('droit');
              if ($session == 'sadmin')
Un prof désespéré à son élève :
- Et maintenant, dessinez-moi un cercle au tableau... Voila... Alors qu'est-ce que c'est?
- Ben un cercle ?
- Non, c'est votre note, sortez !!