Page 1 sur 1

Perte de session

Posté : 02 janv. 2007, 22:16
par stefane321
Bonjour,

Je suis a faire un panier de produit.

Dans mon fichier panier.php je créer donc un tableau sous forme de session:
		if(!isset($_SESSION['panier']))
		{
  		$_SESSION['panier'] = array();
		$_SESSION['panier']['id_produit'] = array();
		$_SESSION['panier']['nom_produit'] = array();
    	$_SESSION['panier']['format_id'] = array();
		$_SESSION['panier']['nom_format'] = array();
		$_SESSION['panier']['qte'] = array();
		$_SESSION['panier']['prix'] = array();
		}
Si après avoir créer $_SESSION["panier"] je quitte la page panier.php pour aller sur une autre page de mon site Web et qu'ensuite je reviens sur panier.php j'ai perdu mon panier. Il est vide, on dirait que la $_SESSION["panier"] a été supprimé.

Pourtant,
J'ai bien mis $session_start(); dans mes pages.
session_start();
Pouvez-vous m'aider svp?

Merci!

Posté : 02 janv. 2007, 23:10
par AB
tu pourrais déjà faire un test pour voir si tes variables de sessions sont bien transmises :

du genre
 
$_SESSION['test'] = 'ok'; 
sur la page du panier

et sur une autre page
if (isset($_SESSION['test'])) echo '$_SESSION[test] = '.$_SESSION['test'];else echo 'Pas de variable de session transmise';
ça te permettras de mieux cerner le pb.

Session passe

Posté : 03 janv. 2007, 01:07
par stefane321
Bon en faisant le test suggéré, je vois que les session passe.

J'ai fait le test sur ma session $_SESSION["panier"] et la session est existante.

Mon problème est donc que la session ou plutot mon tableau se vide.

Si je fais :
<pre>
<?php
var_dump($_SESSION["panier"]);
?>
</pre>
Je vois que mon tableau est existant mais qu'il ne contient plus de données.

En espérant que tu peux m'aider encore.

Merci!

Re: Perte de session

Posté : 03 janv. 2007, 09:45
par Cyrano
...J'ai bien mis $session_start(); dans mes pages....
Es-tu bien certain que ce soit valable ? As-tu essayé avec session_start() ... sans le "$" initial ?

Posté : 03 janv. 2007, 11:12
par AB
Si ta variable $_SESSION["panier"] est bien transmise de page en page et qu'elle est vide, c'est certainement que tu transmets une variable vide.

- Contrôle sa valeur par un affichage dans ta page panier pour voir.

Note : et n'oublies pas que session_start() doit également être présent sur ta page panier!