Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 17/07/2007, 16h09   #1
Membre expérimenté
 
Avatar de Phiss
 
Homme
Développeur Web
Inscription : mai 2005
Messages : 660
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2005
Messages : 660
Points : 581
Points : 581
Par défaut problème de cookies

Bonjour,

Je reviens mais pour poser une question.

Le cadre :
site sous windows 2003 Server
code : asp
base : sql server 2005

mon problème:
Je suis en train de modifier mon site pour qu'il gère les cookies qui sont a priori plus fiable que les variables de sessions.
Ce que je veux c'est qu'un client qui vient sur notre site puisse mettre des articles dans un panier et garder ses infos même après plusieurs heures.

Je voulais donc passer par des cookies et une base temporaire.
Le problème c'est que je n'arrive aps à garder le cookies.
Il reste durant un certain temps mais est ensuite "effacé".

quelqu'un pourrait me dire pourquoi un cookies disparait comme ça?
Je tiens a préciser que le cookies part même si je ne navigue que sur mon site...

Pour info j'ai mis un .expires sur mon cookies a +30 jours.
Mais je pense que c'est justement à la création de ce cookies que cela plante.

...
__________________
" L'absence diminue les médiocres passions et augmente les grandes, comme le vent éteint les bougies et allume le feu. "
La Rochefoucauld
Phiss est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/07/2007, 17h18   #2
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 364
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 364
Points : 1 551
Points : 1 551
Bonjour

On peut voir le code ?
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/07/2007, 18h33   #3
Membre expérimenté
 
Avatar de Phiss
 
Homme
Développeur Web
Inscription : mai 2005
Messages : 660
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2005
Messages : 660
Points : 581
Points : 581
Oui bien sur...

la ligne que je mets dans le fichier qui est appelé en include au tout début de mes pages.
Code :
1
2
 
Response.Cookies("moncookies").Expires = Now() + 30
ensuite dans ma page d'ajout je fais ça

Code :
1
2
 
response.Cookies("moncookies")("panier")= id_panier
j'ai aussi un cookies pour le client
Code :
1
2
 
response.Cookies("moncookies")("client")= id_client
voilà.

Et si je navigue dans le site cela me déconnecte de mon cookies.
__________________
" L'absence diminue les médiocres passions et augmente les grandes, comme le vent éteint les bougies et allume le feu. "
La Rochefoucauld
Phiss est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/07/2007, 20h22   #4
Membre confirmé
 
Avatar de Poussy-Puce
 
Développeur Web
Inscription : octobre 2005
Messages : 357
Détails du profil
Informations personnelles :
Âge : 30
Localisation : Canada

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : octobre 2005
Messages : 357
Points : 206
Points : 206
Bonjour...
J'ai eu un problème avec les cookies dernièrement, je sais pas si ça va t'aider, mais bon... (en plus c'était en DotNET!)

Je créais un cookie dans une page, je changeais ça valeur dans une autre page, et quand je revenais à la première page: la valeur était inchangée!
J'ai découvert que pour un même site, même avec un cookie portant le même nom, il m'en créait un nouveau dans chacune des pages ou j'essayais de changer sa valeur!

Les cookies, quand tu veux les lire dans des pages différentes, c'est pas super efficace (selon moi). Maintenant j'utilise les variables sessions!

Si tu veux voir comment tes cookies réagissent, moi j'utilise firefox: Outils - Option - Vie Privée - Afficher les cookies, les détails des cookies sont super bien montrés!

En espérant que ça t'aura aidé!
__________________
Plus tu pédales moins vite, moins tu avances plus vite...
La vie, c'est comme une bicyclette, il faut avancer pour ne pas perdre l'équilibre...
Poussy-Puce est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2007, 00h44   #5
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Salut,

Bien que tu veuilles utiliser les cookies, je te propose un truc pour l'instant pour les sessions. Il me semble que tu peux redéfinir le temps d'une session donc si tu veux que même après une heure sa session ne soit pas effacer change le temps à ta convenance, as-tu y penser à ça ??

En ce qui concerne les cookies,
tu mets ceci :
Code asp :
<% Response.Cookies("moncookies").Expires = Now() + 30 %>

pourquoi tu lui met un temps d'expiration si tu veux qu'une heure après il soit encore valable ??
Pourquoi ne pas détruire le cookies une fois la commande terminé ?
__________________
Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

FAQ ASP
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2007, 09h28   #6
Membre expérimenté
 
Avatar de Phiss
 
Homme
Développeur Web
Inscription : mai 2005
Messages : 660
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2005
Messages : 660
Points : 581
Points : 581
Bonjour,

Les sessions j'ai est fait le tour.
Elles sont detruites dès que l'on sort de la page du navigateur...
C'est la aussi l'interet des cookies.
Que le client puisse fermé son navigateur puis le relancé et qu'il ait toujours son panier.

Après je vous ai mis un now+30 mais je pourrais mettre une autre valeur.

Sinon Poussy-puce, j'ai pas l'impression que cela vienne de ça.


Sinon a confirmer mais je pense que le problème venait du fait que je ne créeait pas mon cookies assez tôt dans ma page.
Du coup il ne le prenanit pas en compte correctement.

J'ai lu quelque part qu'il faut que le cookies soit créé avant tout affichage sur la page.
__________________
" L'absence diminue les médiocres passions et augmente les grandes, comme le vent éteint les bougies et allume le feu. "
La Rochefoucauld
Phiss est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2007, 09h50   #7
Modérateur
 
Avatar de roro06
 
Inscription : avril 2007
Messages : 1 364
Détails du profil
Informations personnelles :
Âge : 42

Informations forums :
Inscription : avril 2007
Messages : 1 364
Points : 1 551
Points : 1 551
Bonjour

Citation:
J'ai lu quelque part qu'il faut que le cookies soit créé avant tout affichage sur la page.
(je doute)

Je crois (mais c'est a confirmer/vérifier) qu'il faut faire le .expire après avoir écrit le cookie. Donc faire d'abord :
Code :
response.Cookies("moncookies")("panier")= id_panier
Puis après :
Code :
Response.Cookies("moncookies").Expires = Now() + 30


Perso, je ne mets pas now, mais date, ce qui revient au même, je pense.

@kaiser59 : le cookie, en asp en tous cas, expire a la fin de la session si tu ne lui mets pas une date d'expiration.

Les variables de session sont détruites non pas si on ferme le navigateur, mais en fin de session. Autant IE ferme la session si on le ferme, autant FF non (d'où l'interet de tester differents navigateurs) et permet de récupérer sa session même après fermeture (ou plantage )
roro06 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/04/2008, 14h10   #8
Membre expérimenté
 
Avatar de Phiss
 
Homme
Développeur Web
Inscription : mai 2005
Messages : 660
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2005
Messages : 660
Points : 581
Points : 581
Je me permets de remonter mon sujet car cela me plante toujours.

Alors je repose mon problème.

j'ai un site sous sqlserveur programmé en asp / Vbscript.

Je doit gérer les cookies afin de garder plusieurs infos dans ces derniers.

Le problème que je rencontre est que les cookies ne sont pas créer correctement.

Je précise.
Lors de l'ouverture de mon site je créé un cookies que je doit garder tout le long de la navigation du client voir plus.
Mais je rencontre le problème que les cookies ne sont pas enregistrés.

Le souci que je ne comprends pas c'est qu'avec le même code mais sur mon serveur de test cela garde bien les cookies.

Comme code j'ai ça :
- pour la creation.
Code :
1
2
3
4
 
Response.Cookies("test") = "test"
Response.Cookies("test").Expires = date() + 30
Response.Cookies("test")("menu") = "non"
[edit]
Est ce qu'il peut y avoir un paramètre sur le serveur qui gène?
Mais je ne vois pas trop quoi vu que les cookies tout comme les sessions sont gérés coté client.
[/edit]
__________________
" L'absence diminue les médiocres passions et augmente les grandes, comme le vent éteint les bougies et allume le feu. "
La Rochefoucauld
Phiss est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/04/2008, 20h43   #9
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Petite question pourquoi tiens tu à tout prix que l'utilisateur soit tjrs reconnu même des heures après avoir quitter le site ?? Si la personne est parti sans commander pourquoi finirait-elle de commander 10 heures après ? à titre d'exemple
__________________
Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

FAQ ASP
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2008, 08h59   #10
Membre expérimenté
 
Avatar de Phiss
 
Homme
Développeur Web
Inscription : mai 2005
Messages : 660
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2005
Messages : 660
Points : 581
Points : 581
C'est pas ma priorité ça en effet.

Ce que je veux avant tout c'est que cela garde le panier durant sa visite sur mon site...
Ce que cela ne fait pas forcément.
ET j'utilisais avant les sessions mais cela les perdais encore plus souvent.
__________________
" L'absence diminue les médiocres passions et augmente les grandes, comme le vent éteint les bougies et allume le feu. "
La Rochefoucauld
Phiss est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2008, 20h10   #11
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 849
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 849
Points : 5 965
Points : 5 965
Salut,

La création du cookie se fait depuis un point d'entré (page d'accueil ou de ton produit). Il ne me semble pas utile de redéfinir à chaque fois la date d'expiration. Ce pourrait même être génant car n'en profiterait-il pas (le serveur) pour le réinitialiser?

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 15h36   #12
Membre expérimenté
 
Avatar de Phiss
 
Homme
Développeur Web
Inscription : mai 2005
Messages : 660
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2005
Messages : 660
Points : 581
Points : 581
Bonjour,

J'arrive toujours pas a garder mes cookies.
il y a des moments tout va bien et puis d'autres ou ils vont se vider sans raisons.
Et la en plus pas moyen de les re-remplir.
__________________
" L'absence diminue les médiocres passions et augmente les grandes, comme le vent éteint les bougies et allume le feu. "
La Rochefoucauld
Phiss est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2008, 10h53   #13
Membre expérimenté
 
Avatar de Phiss
 
Homme
Développeur Web
Inscription : mai 2005
Messages : 660
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 30
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : mai 2005
Messages : 660
Points : 581
Points : 581
Comme tu me le disais Immobilis je fais en sorte que les cookies ne se réinitialise pas au niveau date d'expiration à chaque page.
Mais cela n'a rien changé.

Code :
1
2
3
4
5
6
7
8
9
10
 
if request.cookies("moncookie") <> "" then
' il existe donc je ne le réinitialise pas
else
' je créais mon cookies avec la valeur par défaut panier et une date à 30 jour
' et un sous cookies à non
	Response.Cookies("moncookie") = "panier"
	Response.Cookies("moncookie").Expires = date() + 30
	response.cookies("moncookie")("menu") = "non"
end if
ce code ne marche pas.


est ce quelqu'un pourrait me dire si le faite d'avoir un sytème de load balancing pourrais influer? Car même si je sais que les cookies sont gérer sur le poste du client...
et le fait d'avoir une page en http://monsite.com et une autre en http://www.monsite.com est ce que cela influe?

Merci.
__________________
" L'absence diminue les médiocres passions et augmente les grandes, comme le vent éteint les bougies et allume le feu. "
La Rochefoucauld
Phiss est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h30.


 
 
 
 
Partenaires

Hébergement Web