Forum Clubic

[PHP] je perd ma session au reload de la page

:stuck_out_tongue:

je fait un shop online.

la session doit contenir l’ID des articles commandés et leur nombre
sous cette forme

$_SESSION[‘id_article’] = ‘quantité’;

mais à chaque chargement d’une page ma session est détruite.

vous pouvez tester.

et ajoutant un article dans la session je fais un print_r($_SESSION); pour vérifier qu’est-ce qui est contenu dedans.

à chaque fois on n’obtient que le dernier article ajouté

je fait juste un session_start() à la première ligne de mon index.php, qui contient les autres pages.

je veux bien vous donner du code, mais quoi… ?

merci si vous avez des conseils… :slight_smile:

met plutôt ça dans un tableau d’articles ça serait plus simple, non?

comment ça un tableau d’articles ?

$_SESSION[‘panier’][‘id_article’] = ‘quantité’; par ex

mais ca ne résoudra pas le problème de perte de la session

t’a pas modifié les variables de configuration de php?

a ouai chui con, j’y avais pensé pis je me suis dis que ça marcherais pos le tableau multidirectionnel ^^

mais coté php.ini g rien touché, c’est sur Free :slight_smile:
en local c pareil :confused:

Pour transmettre mes sessions d’une page à l’autre j’utilise la fonction suivante :[cpp]<?php
function url($path)
{
$sid=strip_tags(SID);
if(empty($sid))echo $path;
else
{
if(strpos($path,’?’)===false)echo $path.’?’.$sid;
else echo $path.’&amp;’.$sid;
}
}
?>[/cpp]
Et sur la page :[cpp]Page suivante[/url][/cpp]

Au passage :
arg_separator.output
session.use_trans_sid

Ce qui évite ce genre de magouille :wink:

(pourquoi changer l’argoutput ? parce que php va pas utiliser &amp;…)

j’imagine que ton message s’adresse à moi, Sans-Nom.
j’ai fait cette fonction de façon à ce que mon coe fonctionne quelquesoit la version de PHP.

si tu trouves qu’elle n’est pas correcte, je veux bien une correction :D. Je débute dans les sessions… :confused:

non mais rassures toi, si vous pouvez vous servir de ça servez vous en :slight_smile:

faire son propre SID n’est pas plus mal non plus, mais bref :slight_smile:

merci mickael
mais y a pas plus simple comme technique ?

paske refaire tous mes liens ça me botte pas… :confused:

NeqO > celle que je fournis par hasard… surtout que ces deux variables sont modifiables par ini_set ou htaccess…

donc tu dis de changer l’argoutput par un autre caractère, et de ne pas afficher le SID dans l’url ?

et comment qu’on fait ça ?

http://fr.php.net/manual/fr/function.ini-set.php
:slight_smile:

voila tout… :slight_smile:

ok merci je vais tester ça :wink:

justement :slight_smile: le SID sera dans l’url, mais ça sera fait en théorie par php :slight_smile:

mais c’est possible de faire ça ausis sur un hébergeur comme free ? ça fait pas partie de la configuration PHP qu’ils ont eux même “réglée” ?

si ini_set est dispo, tu peuxchanger

donc étant donné que je voulais une méthode qui marche à tous les coups, celle que j’ai utilisé n’est pas si mauvaise je pense.

enfin effectivement la tienen est plus propre mais je ne connaissais pas