Session [Résolu]

Signaler
Messages postés
17
Date d'inscription
lundi 21 avril 2003
Statut
Membre
Dernière intervention
26 mai 2008
-
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
-
Bonjour
J'enregistre une variable dans une session.
Je change de page et je ne peux pas la récuperer sur IE7, mais ça fonctionne bien sous Firefox

J'ai essaye des deux façons suivante pour enregistrer ma variable avec
<?
session_start(); 

$_SESSION["Ville"]=$Ville;
       OU
session_register('Ville');

Et j'ai essaye des deux façons pour la récupere
$Ville= $_SESSION["Ville"];
       OU
$Ville= $HTTP_SESSION_VARS["Ville"];

Merci d'avance pour vos réponses
raurau

3 réponses

Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
17
Sur IE7, essaye d'autoriser tous les cookies, le temps de tester, pour voir si ça vient bien de là.

Ensuite, pour cette fonction, rien de bien sorcier.

void session_set_cookie_params ( int $lifetime [, string $path [, string $domain [, bool $secure [, bool $httponly]]]] )

Cette fonction ne renvoit rien.

int $lifetime : durée de vie du cookie, doit être un entier.

string $path : chemin du cookie, peut être le chemin du script ou au dessus, mais pas en dessous. Doit être une chaine de caractères

string $domain : domaine du cookie. Généralement, le domaine du site. un cookie enregistré sur le domaine site.com sera disponible sur www.site.com, sur bidule.site.com etc. Un cookie enregistré avec le domaine www.site.com ne sera pas disponible sur bidule.site.com

Les deux autres paramètres peuvent être omis.

bool $secure : si c'est sur SSL (false dans la plupart des cas). Doit être un booléen (true ou false)

bool $httponly : si vaut true, alors le cookie n'est pas accessible par javascript.

Bref. Il suffit de lire la doc des différentes directives de configuration de php, puisque cette fonction ne fait que modifier d'un seul coup toutes ces directives (qui sont modifiables avec ini_set() )

http://fr.php.net/manual/fr/ref.session.php

M'enfin si ça fonctionne avec FF, c'est que ton script est correct. Mais pas la configuration de ton IE. Ou alors, la session n'est pas suffisament bien déclarée pour fonctionner avec la configuration actuelle de ton IE.
Messages postés
2483
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
14 janvier 2011
17
Salut,

Ce seriat pas un problème de cookies ?
N'hésite pas à configurer les paramètres de cookies de la session avec session_set_cookie_params : http://fr.php.net/manual/fr/function.session-set-cookie-params.php

Il faut que le domaine et le chemin correspondent au domaine de ton site et au chemin de ton script.
Sinon, le SID risque d'être différent à chaque fois, et les variables de sessions perdues pour toujours.

Tu peux vérifier si la session est toujours la même :

session_start();
echo session_id();
Messages postés
17
Date d'inscription
lundi 21 avril 2003
Statut
Membre
Dernière intervention
26 mai 2008

Merci
Pour firefox la session ne change pas, mais pour IE7 elle change.
Je suis allé voir sur :
http://fr.php.net/manual/fr/function.session-set-cookie-params.php
Etant débutant et les commentaires qui sont en anglais, je nage.
Merci
raurau