Afficher variable de session d'une page à une autre : Undefined

Fermé
EinsteinE=mc2 Messages postés 40 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 19 octobre 2017 - 17 mai 2016 à 08:22
jordane45 Messages postés 38314 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 novembre 2024 - 17 mai 2016 à 08:40
Bonjour,

Je souhaite afficher une variable de session sur ma page cible ,
J'ai bien fait un

 <?php  
					  
						if(session_id() == '') {   // si la session n'est pas démarré on l'a démarre
 session_start();
}
?>
 
au début de mon fichier

Voici mon code :




 <?php  
					  		 
 echo 'Bienvenue chez Manusap '.$_SESSION["utilisateur"]; ?> 
					 


Il me retourne cette erreur Notice: Undefined index: Prenom in et pourtant je l'ai défini dans ma précédente page php:



<?php 
//Affichage des erreurs PHP
error_reporting(E_ALL);

//Démarrage des Sessions
session_start();

//connexion à la BDD 
require_once "cnxBdd.php";

// Récupération PROPRE des variables AVANT de les utiliser
$Civilite = isset($_POST["civility"]) ? $_POST["civility"] : '';
$Nom = !empty($_POST["lastname"]) ? $_POST["lastname"] : '';  
$Prenom = isset($_POST["firstname"]) ? $_POST["firstname"] : '';
$Pays = isset($_POST["country"]) ? $_POST["country"] : '';
$Utilisateur_mail = isset($_POST["mail"]) ? $_POST["mail"] : '';
$Utilisateur_mdp = isset($_POST["pass"]) ? $_POST["pass"] : '';

//print_r($_POST);
//traitement du Submit 
if($Nom){

   //préparation de la requête
   $sql = "INSERT INTO utilisateur(Civilite
                                 , Nom
                                 , Prenom
                                 , Pays
                                 , Utilisateur_mail
                                 , Utilisateur_mdp
                                 ) 
                       VALUES (:Civilite
                              ,:Nom
                              ,:Prenom
                              ,:Pays
                              ,:Utilisateur_mail
                              ,:Utilisateur_mdp
                              )";

    $variables = array(':Civilite'=>$Civilite
                       ,':Nom'=>$Nom
                       ,':Prenom'=>$Prenom
                       ,':Pays'=>$Pays
                       ,':Utilisateur_mail'=>$Utilisateur_mail
                       ,':Utilisateur_mdp' =>$Utilisateur_mdp);
   
   //---------------------------------------------------//
   //le temps des tests:
   echo "<br>La requête est :<br>".$sql;
   echo "<br><pre>Les variables sont :<br>";
   print_r($variables);
   echo "<br></pre>";
   //---------------------------------------------------//
   
   
  //exécution de la requete
  try{
   $requete= $db->prepare($sql);
   $requete->execute($variables);
    
    //Si tu as mis un champ auto-incrementé dans ta table
    // tu peux même récupérer l'ID sur lequel aura été inséré ta ligne
    $id = $db->lastInsertId(); 
    $_SESSION["Utilisateur_id"] = $id;
    
    $_SESSION["utilisateur"]= $Prenom ;// Permet de garder la connexion active de page en page 
	header('Location: enregistrement_ok.php');
    echo 'Enregistrement effectué !  <b>ID:</b> = '.$id;
  }catch(Exception $e){
    echo "<br>Erreur :".$e->getMessage();
  }
  
}






A voir également:

1 réponse

jordane45 Messages postés 38314 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 24 novembre 2024 4 705
17 mai 2016 à 08:40
Le message d'erreur te parle d'une variable prenom... aucun rapport avec le code montré SESSION ['utilisateur'] ....
0