IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Persistance UserData pour alternative aux cookies


Sujet :

JavaScript

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 306
    Points : 106
    Points
    106
    Par défaut Persistance UserData pour alternative aux cookies
    Bonjour,

    Le résultat de ce script rest undefined, si quelqu'un pouvait m'aider afin de savoir pourquoi...
    Merci d'avance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    <style type="text/css">
    .persistant
    	{
    	behavior : url(#default#userData);}
    	}
    </style>
     
    <script type="text/javascript">
    var memoire = document.getElementById("memoire");
    memoire.style.behavior = "url('#default#userData')";
     
    memoire.setAttribute("nomUtilisateur", nomUtilisateur);
    memoire.setAttribute("couleurPreferee", couleurPreferee);
    memoire.save("mesDonneesPersistantes");	 
     
    var chargement = document.getElementById("memoire");
    chargement.load("mesDonneesPersistantes");
     
    var utilisateur = chargement.getAttribute("monUtilisateur");
    var couleur = chargement.getAttribute("couleurPreferee");
    </script>								   
    </head>
    <body>	 
     
    <div id="memoire" class="persistant"></div>
     
    <script type="text/javascript">
    document.write(couleur);
    </script>
    Merci pour votre aide

  2. #2
    Membre expérimenté Avatar de julien.63
    Profil pro
    balayeur
    Inscrit en
    Décembre 2005
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : balayeur

    Informations forums :
    Inscription : Décembre 2005
    Messages : 1 348
    Points : 1 311
    Points
    1 311
    Par défaut
    salut,
    tout d'abord, tu ne peux pas faire ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <script type="text/javascript">
    var memoire = document.getElementById("memoire");
    ...
    </script>
    Au moment où ce code est exécuté, l'element memoire n'existe pas encore, donc impossible de le récupérer.

    je proposerai plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    ...
    <script type="text/javascript">
    var utilisateur;
    var couleur;
    var memoire;
    var chargement;
     
    function init(){
    	memoire = document.getElementById("memoire");
    	memoire.style.behavior = "url('#default#userData')";
     
    	memoire.setAttribute("nomUtilisateur", nomUtilisateur);
    	memoire.setAttribute("couleurPreferee", couleurPreferee);
    	memoire.save("mesDonneesPersistantes");	 
     
    	chargement = document.getElementById("memoire");
    	chargement.load("mesDonneesPersistantes");
     
    	utilisateur = chargement.getAttribute("monUtilisateur");
    	couleur = chargement.getAttribute("couleurPreferee");
    }
    </script>	
     
    </head>
    <body onload="init();">	
    ...
    Les variables sont déclarées en globales, donc accessible en dehors de la fonction init(). La fonction init() s'exécutent sur le onload du body, c'est à dire quand le corps de la page est chargé. A ce moment là tous les éléments sont disponibles.

    Ensuite, je ne connais pas les méthodes save et load. As-tu trouvé de la documentation dessus?

  3. #3
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    oui mais je ne vois pas en quoi elle persisteraient une fois la page dechargée ... ?

    bon après quelques recherches il semblerait en effet que IE permette d'utiliser le behaviour pour conserver des données ...

    Mias premièrement c'est propriétaire IE, donc non focntionnel sur d'autres navigateurs.
    et ensuite pourquoi aller cherche un truc super compliqué àlors que les varaibles navigator permettent de le faire cent fois plus facilement (aussi prpopriétaire IE)
    pas besoin de save ou de load, les variables sont hyper globales et accessibles et modifiable immédiatement.
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

Discussions similaires

  1. Alternative aux fichiers .htaccess pour YTS
    Par achraf.b.a dans le forum Apache
    Réponses: 6
    Dernier message: 08/01/2013, 00h49
  2. alternative aux cookies?
    Par Bike passion dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 08/01/2010, 09h34
  3. Alternative aux forms pour afficher groupe d'objets
    Par fredtheman dans le forum Composants VCL
    Réponses: 5
    Dernier message: 15/09/2008, 17h52
  4. [Cookies] Alternative aux cookies pour les sessions ?
    Par anthonycosson dans le forum Langage
    Réponses: 4
    Dernier message: 18/09/2007, 11h58
  5. Réponses: 19
    Dernier message: 04/04/2006, 14h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo