Undefined index

Résolu
AlexGamer57 Messages postés 84 Statut Membre -  
AlexGamer57 Messages postés 84 Statut Membre -
Bonjour,

j'ai un problème avec PHP : j'ai fait une page d'inscription et je suis en train de créer une page de connexion. Le formulaire de connexion apparait sur toutes les pages et renvoie vers la page index.php. J'ai un message d'erreur "undefined index" que je n'arrive pas à résoudre. Voici le code du header :

if( // Par défaut )   
{   
   // On affiche le formulaire   
   include('includes/header_connect.php');   
}   
elseif( // Si on a rien écrit )   
{   
   // On affiche le formulaire + un message d'erreur   
   include('includes/header_erreur.php');   
}   
elseif( // Si tout est bon )   
{   
   try   
   {   
      $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;   
      $bdd = new PDO('mysql:host=localhost;dbname=bdd', 'root', '', $pdo_options);   
   }   
   catch(Exception $e)   
   {   
      die('Erreur : '.$e->getMessage());   
   }   
      
   $mdp_hache = sha1($_POST['mdp_connexion']);   
      
   $reponse_connexion = $bdd->query('SELECT id FROM membres WHERE pseudo = \'' . $_POST['pseudo_connexion'] . '\' AND mdp = \'' . $mdp_hache . '\'');   
   $reponse_connexion->execute(array(   
    'pseudo' => $_POST['pseudo_connexion'],   
    'mdp' => $mdp_hache));   

   while($donnees_connexion = $reponse_connexion->fetch())   
   {   
      // Si le pseudo et le mdp sont bons, on crée une session   
      if ($donnees_connexion)   
      {   
    $_SESSION['id'] = $donnees_connexion['id'];   
    $_SESSION['pseudo'] = $donnees_connexion['pseudo'];   
        
    include('includes/header_connected.php');   
 }   
 else   
 {   
    include('includes/header_erreur.php');   
 }   
   }   
   $reponse_connexion->closeCursor();   
}   
elseif( // Si la session a été créée)   
{   
   // On affiche le pseudo et un lien pour se déconnecter   
   include('includes/header_connected.php');   
}   


Mon problème est au niveau de la création de la session : dans le if($donnees_connexion). Quand je vais sur mon site et que j'entre le bon pseudo et le bon mot de passe et que j'appuie sur le bouton pour se connecter, une erreur s'affiche :

Notice: Undefined index: pseudo in C:\wamp\www\mon_site\includes\header.php on line 36

La ligne 36 est celle-ci :

$_SESSION['pseudo'] = $donnees_connexion['pseudo'];

php ne reconnait pas la variable $donnees_connexion['pseudo']... comment régler ce problème ? Merci d'avance !

A voir également:

2 réponses

A.Nonymous
 
"SELECT id FROM membres [...]"

Le SQL ne sélectionne que "id", et donc pas "pseudo"
2
AlexGamer57 Messages postés 84 Statut Membre 12
 
Merci ! Je n'avais pas pensé à vérifier ma requête... Problème résolu !
0
lili34500 Messages postés 187 Statut Membre 16
 
Ta variable est un tableaux donc informe PHP

$ta_variable = array();
0