Problème de variable de session sur le serveur

cedlannoy Messages postés 13 Date d'inscription vendredi 23 janvier 2004 Statut Membre Dernière intervention 23 février 2013 - 27 oct. 2009 à 10:20
cedlannoy Messages postés 13 Date d'inscription vendredi 23 janvier 2004 Statut Membre Dernière intervention 23 février 2013 - 6 nov. 2009 à 10:15
Bonjour.
J'ai un énorme problème sur les échanges de variables sur notre serveur coldfusion.

En effett si deux internautes se trouvent en même temp sur le serveur et ajoute des articles dans le caddie,
il se peux que de temp en temp l'un récupére le caddie de l'autre !!!
Je ne comprends pas comment cela peut se produire.
Quelqu'un a t-il des infos sur la partie cfapplication et les parramétrage a avoir sur le serveur pour les variables de sessions ?


Merci

5 réponses

nickadele Messages postés 1251 Date d'inscription mercredi 7 août 2002 Statut Modérateur Dernière intervention 10 avril 2013
27 oct. 2009 à 13:38
Bonjour,

première question : tu es avec quelle version de CF 6, 7, 8 ?
seconde question : ton fichier application c'est un cfc ou un cfm ?

Dans tous les cas tu dois
- activer la gestion des sessions : SessionManagement = True
- définir le timeout des sessions : SessionTimeout = CreateTimeSpan(0,0,20,0) >> ici 20 minutes
- Stocker le caddie de l'utilisateur dans l'objet SESSION : SESSION.caddie = caddie


Nickadele
non, ma belle ne s'appel pas Adèle
Mon Blog
0
cedlannoy Messages postés 13 Date d'inscription vendredi 23 janvier 2004 Statut Membre Dernière intervention 23 février 2013
28 oct. 2009 à 11:56
Bonjour et merci pour cette première réponse.

Je suis sur un Coldfusion 7.
avec un appllication.cfm

voici le début du fichier :
<cfapplication name="monapplication" sessionManagement = "yes" sessiontimeout=#createtimespan(0,24,0,0)#>

et voici le code de gestion du caddie, page cart_manage.cfm

<cfif isdefined('FORM.add_button.y') and Form.quantity not equal 0 and isnumeric(Form.quantity)>
<cfset bMatching = false/>
<cfloop from="1" to="#ArrayLen(SESSION.cart)#" index="i">
<cfif SESSION.cart[i].prod_id EQ FORM.prod_id>
<cfset bMatching = true/>
<cfset SESSION.cart[i].quantity = SESSION.cart[i].quantity + FORM.quantity /></cfif>
</cfloop>
<cfif NOT bMatching>
<cfset stItem = StructNew() />
<cfset stItem.prod_id = FORM.prod_id />
<cfset stItem.prod_libelle = FORM.prod_libelle />
<cfset stItem.quantity = FORM.quantity />
<cfset stItem.horsnorme = FORM.prod_horsnorme />
<cfif stItem.horsnorme eq 'oui'><cfset session.horsnorme 'oui'><cfelse><cfset session.horsnorme 'non'></cfif>
<cfset ArrayAppend(session.cart, stItem) />
</cfif>
</cfif>
<cflocation url="store.cfm?PageNum_reference=#session.page####FORM.prod_id#" addtoken="yes">

Je suis certain que coldfusion me mélange les sessions des utilisateurs du site web.
Merci
0
nickadele Messages postés 1251 Date d'inscription mercredi 7 août 2002 Statut Modérateur Dernière intervention 10 avril 2013
28 oct. 2009 à 13:36
Bonjour,
Je n'ai pas encore eu d'écho de problème de gestion de session de la part de CF.
Je ne vois pas non plus de problèmes au niveau de ton code.
La version de CF est-elle bien une version PRO avec license officielle ?
Car sur les version de développement, le nombre de sessions est limité.

As-tu su reproduire le bug ?


Nickadele
non, ma belle ne s'appel pas Adèle
Mon Blog
0
cedlannoy Messages postés 13 Date d'inscription vendredi 23 janvier 2004 Statut Membre Dernière intervention 23 février 2013
2 nov. 2009 à 15:01
Oui c'est une version 7 officiel.
Et oui le problème arrive au moins une fois par jour.
C'est un site web qui génére plus de 500 connexions par jour.

Merci
0

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

Posez votre question
cedlannoy Messages postés 13 Date d'inscription vendredi 23 janvier 2004 Statut Membre Dernière intervention 23 février 2013
6 nov. 2009 à 10:15
Attention au proxy de certain internautes.
Effectivement parfoit le proxy de grandes structure peut être problèmatique.
Solution mettre le cftoken et le cfid dans 100% des liens du site web.

Cedlannoy
0
Rejoignez-nous