The front page All those lovely tutorials Other sites of interest More info about Stickman
Stickman

Cookies

Lire, écrire et supprimer des cookies avec Flash et Javascript

[Traduction: Philippe Allouche]



 INFOS 

Version Flash 4
Niveau Advanced
Créé 1st Nov 2000

 TRADUCTIONS 

English

 FICHIERS 

ZIP

FLA

Je travaille sur un projet où on a besoin d'avoir accès aux cookies sans restriction. J ai vu ici et là différentes méthodes, mais je n'ai pas pu en trouver une qui réalisait ce dont j'avais besoin et dont le fonctionnement soit simple et limpide. Cela m'a pris du temps , mais j'ai trouvé cette technique issue de plusieurs sources (et de mon raisonnement).

Vous voulez dire que ce n'est pas le fruit votre travail ?

Eh bien, oui et non. Alors que le fichier final et le JavaScript sont vraiment de moi, j'ai utilisé pas mal de sources d'inspiration. Tout d'abord chez Colin Moock et dans son introduction à l'utilisation de FS Command et JavaScript (en anglais). De même la FS Command Javascript Library à Ashzfall m'a aussi bien éclairé que paumé. Enfin, certains messages sur We're Here m'ont vraiment fait avancer.

Ouais, ouais. Ben vas-y

Bien, ceci est un tutoriel de niveau avancé alors je ne vais pas expliquer ce que sont les cookies, comment ça fonctionne ou pour quelles raisons vous pourriez vous en servir (pour plus d'info à ce sujet essayez CookieCentral). Je ne vais pas non plus entrer dans les détails concernant FS Command -- comme mentionné ci-dessus, le site de Colin Mook a un excellent tutoriel sur le sujet, je vous le recommande.

A la place, voilà une explication rapide pour pouvoir s'en servir...

1) Insérer le script

Inclus dans fichier zippé vous trouverez du HTML qui comporte tout le script dont vous avez besoin pour lire,écrire ou supprimer des cookies (sinon, regardez la source de cette page). Vous trouverez aussi du VBScript qui lui aussi est nécessaire.

Il faut juste copier-coller le script dans votre document, mais remplacez bien f4cookie à chaque fois par le nom de votre animation. Ce paramètre se place dans la balise <OBJECT ID=...> et dans la balise <EMBED NAME=...>. C'est juste une indication pour que l'animation dise au JavaScript où envoyer les données.

Il faudra aussi insérer le code suivant dans la balise <EMBED...>

swLiveConnect="true"

Ce code et ce VBScript permettent la communication entre Flash et le navigateur (JavaScript par exemple).

2) Utiliser les FS Commands dans Flash

FS Command fonctionne avec une 'commande' et un 'argument'. Dans ce cas nous avons trois commandes qui fonctionnent comme suit:

Disons que nous voulons créer un cookie appelé UserName, qu'on lui donne la valeur Stickman et qu'il expire dans un mois. On utilisera la syntaxe suivante:

FS Command ("set_cookie", "UserName,Stickman,30")

Vous pouvez utiliser des espaces dans les valeurs mais pas de virgules (utilisez uniquement les virgules pour séparer les valeurs comme ci-dessus).

Si vous voulez récupérer le cookie plus tard, utilisez la syntaxe suivante :

FS Command ("get_cookie", "UserName,result")

Quand la commande sera exécutée la variable result contiendra la valeur du cookie UserName (si le cookie est vide ou s'il n'existe pas, la variable retournera la valeur "undefined" -indéfinie). De toute façon, il y a un petit délai entre l'envoi de la commande et le retour de la valeur, si bien qu'on ne peut se servir immédiatemment de celle-ci. C'est pourquoi si vous regardez le code pour le bouton GET COOKIE dans le fichier Flash , on appelle un clip d'animation appelé ValueChecker. Ayant attribué à result une valeur temporaire ("**waiting**"), ce clip d'animation joue en boucle jusqu'à que la valeur de result change -- indiquant que la valeur du cookie a été retourné.

3) C'est tout

Cela résume assez bien comment utiliser cette technique dans vos propres fichiers. Si vous avez paramétré le nom de votre animation dans le JavaScript correctement, vous ne devriez pas avoir de problèmes.

Mais comment ça marche ?

Le plus gros du travail est effectué par le JavaScript, et je ne vais pas commencer à donner des leçons sur le sujet. Le code JavaScript est très bien commenté , regardez-le et les choses deviendront plus claires.

Si vous avez des problèmes pour comprendre la technique du FS Command et Javascript, je vous recommande encore une fois le tutoriel de Colin Moock. De même essayez de changer les valeurs dans le fichier Flash et regardez ce qui se passe.

Bon courage !

Stickman

All files and text copyright ©Stickman 1998 - 2003. For copyright and terms of use information, please read this page.