Sessions et objet

cs_ov3rdoze Messages postés 414 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 23 septembre 2014 - 22 mai 2006 à 14:36
cs_ov3rdoze Messages postés 414 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 23 septembre 2014 - 23 mai 2006 à 09:51
Salut


Je voudrai faire un systeme de panier. j'ai fais le code suivant :
class Panier {

var $panier = array();


// constructeur

function __construct() {

session_start(); //Ouverture d'une session

if (!isset ($_SESSION['panier'])) { //Le panier n'existe pas ?

$_SESSION['ip'] = $REMOTE_ADDR; //On enregistre l'IP du visiteur

$_SESSION['panier'] = array(); //On créé le panier (c'est un tableau)

}

$this->panier = $_SESSION['panier']; //On enregistre le tableau dans l'objet

}


Le panier est bien créé, toutes les méthodes fonctionnent mais si je change de page, le panier n'existe plus.
j'ai fai un test et en fait mon constructeur ne créé pas la session

Quelqu'un a une idée?
Merci d'avance

8 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
22 mai 2006 à 15:27
Hello,

peut-être y a t il du html AVANT que tu n'instancies ton objet sur chaque page.
0
cs_ov3rdoze Messages postés 414 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 23 septembre 2014
22 mai 2006 à 15:49
Non la classe est dans un fichier a part
ensuiteje fais un require() de ce fichier et ya tout qui fonctionne sauf la session

Merci quand meme:)
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
22 mai 2006 à 16:03
Oui mais quand tu changes de page, tu fais quoi avec ta classe ?
0
cs_ov3rdoze Messages postés 414 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 23 septembre 2014
22 mai 2006 à 16:20
Je met '$caddie = new Panier();' juste apres le require
Ensuite j'ai essayé if (isset ($_SESSION['panier'])) echo "oui"; else echo "non"; mais ca affiche toujours non;

J'ai essayé d'ajouter des trucs dans le panier, ils y sont, je peux les afficher et tout mais pour la session il dit toujours qu'elle existe pas
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
22 mai 2006 à 21:37
serialize() et unserialize() pour la transmission d'objet via session !
0
cs_ov3rdoze Messages postés 414 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 23 septembre 2014
23 mai 2006 à 08:52
c'est à dire?
Désolé je fai de l'objet depuis pas tres longtemps...
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
23 mai 2006 à 09:28
Vu ce qu'il fait, le problème est ailleurs à mon avis.
La session est gérée dans l'objet.

- es tu en register_globals à On ou à Off ?
- c'est en local, ou chez un hébergeur ?


J'ai testé ton code, et après qques corrections mineures, ça fonctionne chez moi, ma session passe bien de page en page.


 
0
cs_ov3rdoze Messages postés 414 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 23 septembre 2014
23 mai 2006 à 09:51
suis en local, j'imagine meme pas ce qui va se passer chez l'hebergeur;)
Les register sont a On.
Ca a un lien?
0
Rejoignez-nous