Bonjour à tous,
Je fais face à un problème surprenant concernant l'utilisation de Cookies et leur lecture sous IE7, je m'explique.
Le principe est simple (ou devrait l'être ...) :
Il y a 2 sites sur 2 serveurs différents : 1 site "client", 1 site "plateforme".
Le visiteur du site "client" est lors de sa navigation redirigé automatiquement vers une page du site "plateforme", qui va poser un cookie (qui sera donc accessible uniquement au site "plateforme") puis est redirigé vers une nouvelle page du site "client".
Or je voudrais que sur la page de destination du site "client", une vérification soit faite afin de s'assurer que le cookie mis en place par la plateforme soit présent, et que cette vérification consiste en une simple ligne javascript pour le client.
Evidement, il s'agit de 2 domaines différents, donc pas d'acces direct au cookie de la plateforme en js, ni d'ajax en cross-domain.
J'ai alors mis en place sur la plateforme un script appelé comme source javascript sur le site client, qui réalise telle outelle action en fonction de la présence du cookie.
Ce systeme fonctionne parfaitement sous FIREFOX, mais aussi IE6.
Le problème se pose sous IE7, où le cookie est bien créer, mais semble inaccessible/inexistant pour le script appelé en source javascript.
Exemple d'appel au script de vérification du cookie sur le site "client":
et code du script "http://www.plateforme.com/generescript.php" sur le site "plateforme" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <script type="text/javascript" language="Javascript" src="http://www.plateforme.com/generescript.php"></script>
Après avoir essayer de retourner le problème dans tous les sens, j'en ai déduis que le contexte d'appel au script varie en fonction d'un appel direct (adresse entrée en barre d'adresse) et d'un appel en tant que script javascript pour IE7.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 if (isset($_COOKIE["CookieTestLecture"])){ echo "alert('OK - ".$_COOKIE["CookieTestLecture"]."');"; }else{ echo "alert('Erreur - ".$_COOKIE["CookieTestLecture"]."');"; }
J'espère donc qu'il existe peut-être un attribut ou balise à mettre en place afin de permettre une telle manipulation.
En espérant avoir été assez clair, n'hésitez pas à me questionner si certains éléments ne vous semblent pas clairs.
Merci,
Beberforever
Partager