PHP Class dans une Session

Fermé
smag42 Messages postés 200 Date d'inscription dimanche 15 février 2009 Statut Membre Dernière intervention 22 mai 2014 - 8 mai 2011 à 15:50
smag42 Messages postés 200 Date d'inscription dimanche 15 février 2009 Statut Membre Dernière intervention 22 mai 2014 - 9 mai 2011 à 11:17
Bonjour à tous,

Voila, je crée mon espace membre sur un site en Localhost.

Pour l'utilisation des données de l'utilisateur j'ai créé une classe CUtilisateur avec des ascenseurs SET et GET pour chaque attributs:
(extrait):
class CUtilisateur {

    private $idutilisateur;
    private $email;
    private $nom;
    private $prenom;
    private $pseudo;
    private $motpass;
    private $date_inscription;
    private $date_visite;
    private $pay;
    private $adresseIP;

    public function __construct() {
    }
    public function __destruct() {
    }
    public function setNom($nom) {
        $nom = str_ireplace('-', ' ', $nom);
        $this->nom = strtoupper($nom);
    }
    public function setPrenom($prenom) {
        $prenom = str_ireplace('-', ' ', $prenom);
        $this->prenom = ucwords($prenom);
    }
    public function setPseudo($pseudo) {
        $this->pseudo = $pseudo;
    }
    public function setMotPass($password) {
        $this->motpass = md5($password);
    }
   public function getPseudo() {
        return $this->pseudo;
    }
}


Quand je crée une variable local dans mon code pas de problème:
$utilisateur = new CUtilisateur();


Mais je souhaite mettre cette classe dans une Session avec une valeur dans chaque attributs:
$_SESSION['utilisateur'] = new CUtilisateur();


Ceci fonctionne sur la page en cour ("testconnexion.php"), j'ai accès à toutes les méthodes, mais quand je passe directement à la page "profil.php" via la fonction header, la structure de la classe existe dans la Session mais sans les valeurs dedans !
object(__PHP_Incomplete_Class)[1]
  public '__PHP_Incomplete_Class_Name' => string 'CUtilisateur' (length=12)
  private 'idutilisateur' (CUtilisateur) => string '' (length=0)
  private 'email' (CUtilisateur) => string '' (length=0)
  private 'nom' (CUtilisateur) => string '' (length=0)
  private 'prenom' (CUtilisateur) => string '' (length=0)
  private 'pseudo' (CUtilisateur) => string '' (length=0)
  private 'motpass' (CUtilisateur) => string '' (length=0)
  private 'date_inscription' (CUtilisateur) => string '' (length=0)
  private 'date_visite' (CUtilisateur) => string '' (length=0)
  private 'pay' (CUtilisateur) => string '' (length=0)
  private 'adresseIP' (CUtilisateur) => string '' (length=0)


Auriez-vous une idée SVP ?


A voir également:

2 réponses

mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 340
9 mai 2011 à 09:55
Bonjour

chaque script doit commencer par session_start();

Cdlt
0
smag42 Messages postés 200 Date d'inscription dimanche 15 février 2009 Statut Membre Dernière intervention 22 mai 2014 10
Modifié par smag42 le 9/05/2011 à 11:20
J'ai deja mis le session_start() dand le "debup.php" où je l'inclu avec la fonction require_once en debut de tous les fichiers. Sinon il ne m aurait pas trouvé la stucture de la classe dans la nouvelle page.
0

Discussions similaires