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

Bibliothèques & Frameworks Discussion :

Masquer un tableau lors du demarrage ,et le manipuler avec une authentification [Dojo]


Sujet :

Bibliothèques & Frameworks

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juin 2010
    Messages : 80
    Points : 51
    Points
    51
    Par défaut Masquer un tableau lors du demarrage ,et le manipuler avec une authentification
    bonjour ,j'ai crée un tableau d'annuaire (grid) avec un boutton ajouter qui fait apparaitre un formulaire de saisi

    voici mon code :
    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
    <div class="header form-area">
                    <div class="searcharea">
                        <div dojoType="dijit.form.TextBox" type="text" id="search" name="search"></div>
                    </div>
                    <div class="right-button">
                        <div dojoType="dijit.form.Button" onclick="dijit.byId('dialogAdd').show()">Ajouter</div>
                        <div dojoType="dijit.form.Button" id="delete">Supprimer la s&eacute;l&eacute;ction</div>
                    </div>
                </div>
                <div dojoType="dojox.grid.DataGrid" jsId="grid" store="store" structure="layout" query="{}" rowSelector="20px"></div>
                <div class="footer form-area">
                    <div dojoType="dijit.form.Button" id="save" onclick="grid.store.save();">Sauvegarder les modifications</div>
                </div>
                <div dojoType="dijit.Dialog" id="dialogAdd" jsId="dialogAdd" title="Ajouter &agrave; l'annuaire">
                    <table>
                        <tr>
                            <td><label for="name">code</label></td>
                            <td><input dojoType="dijit.form.ValidationTextBox" required="true" type="text" id="name" name="name"></td>
                        </tr>
                        <tr>
                            <td><label for="firstname">designation</label></td>
                            <td><input dojoType="dijit.form.ValidationTextBox" require="true" type="text" id="firstname" name="firstname"></td>
                        </tr>
                        <tr>
                            <td><label for="phone">prix</label></td>
                            <td><input dojoType="dijit.form.ValidationTextBox" require="true" type="text" id="phone" name="phone"></td>
                        </tr>
                    </table>
                    <button dojoType="dijit.form.Button" type="submit" id="add" class="my-button">Enregistrer</button>
                </div>
    par ailleur jai crée un boutton pour s'authentifier
    *
    avec comme code :
    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
    <div dojoType="dijit.form.Button" onclick="dijit.byId('dialogAdd2').show()">s'authentifier</div>
    <div dojoType="dijit.Dialog" id="dialogAdd2" jsId="dialogAdd2" title="espace authentification">
                    <table>
                        <tr>
                            <td><label for="name">login</label></td>
                            <td><input dojoType="dijit.form.ValidationTextBox" required="true" type="text" id="login" name="login"></td>
                        </tr>
                        <tr>
                            <td><label for="firstname">mot de passe</label></td>
                            <td><input dojoType="dijit.form.ValidationTextBox" require="true" type="text" id="mdp" name="mdp"></td>
                        </tr>
     
                    </table>
                    <button dojoType="dijit.form.Button" onclick="doAnimation(2);">s'authentifier</button>
                </div>
    mes questions sont :
    - comment faire disparaitre mon tableau(grid) ,lors du lancement de ma page html ,et afficher seulement mon boutton d'authentification ?(jai trouve la fct 'fadOut' mais j'ai pas su comment l'utiliser )
    -afficher mon tableau depend de l'authentification ,en d'autres termes le grid ne sera affiché que lors d'un succés dauthentification ,sinon un message d'erreur s'affiche sur le dialog d'authentification meme ! comment implementer les tests d'authentification en se basant sur un fichier JSON ??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    { identifier: 'name1',
      label: 'name1',
      items: [
          { login:'ut1', mdp:'Alex'},
         { login:'ut2', mdp:'country'}
    ]}

    merci d'avance pour votre aide !

  2. #2
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2010
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2010
    Messages : 322
    Points : 535
    Points
    535
    Par défaut
    Rebonjour,

    Je pense qu'avec un style (display=none) ca devrait suffire. Tout dépend si tu souhaites que le code soit visible dans le source avant authentification...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <div id='header' class="header form-area" style='display:none;'>
    Ensuite, au niveau de l'authentification, lorsque tu as le retour comme quoi le login et le mot de passe sont ok tu fais un display=block.

    Pour ce qui est de l'authentification, il suffit de faire avec un xhrget ou xhrpost et d'analyser le retour comme expliqué dans ton autre post. Par contre, je n'ai jamais fait avec un fichier json. Mais je pense qu'il n'y a rien de bien complique. Je vais faire quelques tests.

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2010
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2010
    Messages : 322
    Points : 535
    Points
    535
    Par défaut
    Bon j'ai testé un ptit truc je pense que ca peut convenir.

    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
    31
    32
    33
     
    //cree un objet store avec le contenu du json
    var authStore = new dojo.data.ItemFileReadStore({
    		jsId:'users',
    		data: { items: [
    					{ login:'ut1', mdp:'Alex'},
    					{ login:'ut2', mdp:'country'}
    				]}
                    //ou
                    //url:'monfichier.json'
    	});
            //permet de lire le contenu du store
    	authStore.fetch({
                    //requete ou l'on va ajouter les valeurs saisies dans les champs
    		query: {
    				login:'ut1', //champ login
    				mdp:'test'}, //champ mdp
                    //a la fin de la recherche
    		onComplete: function (items,request){
                            //on scanne le resultat contenu dans items
    			for (i = 0; i < items.length; i++) {
    			var item = items[i];
    				alert(authStore.getValue(item, "login"));
    			}
                            //si rien n'est trouve
    			if(i==0){
    				alert("mauvais login / mot de passe");
    			}
    		},
    		onError : function (error,request){
    			alert(error.message);
    		}
    	});

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juin 2010
    Messages : 80
    Points : 51
    Points
    51
    Par défaut
    merci bcp ,ca marche parfaitement !
    en cas de succés je dois rendre mon display=block ,comment pourrais-je le faire ?

  5. #5
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Bonjour,

    Dans ce cas là vous devez définir un else :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    //si rien n'est trouve
    if(i==0){
       alert("mauvais login / mot de passe");
    }else{
       document.getElementById("header").style.display = "block";
       //dojo.byId("header").style.display = "block";
    }
    Je ne sais plus si la variante dojo.byId fonctionne de la même manière pour les style.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juin 2010
    Messages : 80
    Points : 51
    Points
    51
    Par défaut
    messieurs merci pour votre aide

  7. #7
    Expert éminent sénior

    Avatar de vermine
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    6 582
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2008
    Messages : 6 582
    Points : 79 912
    Points
    79 912
    Par défaut
    Au plaisir.

    Si votre problème est résolu, n'oubliez pas de cliquer sur le bouton qui se trouve en bas (au centre) de la discussion.

  8. #8
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2010
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2010
    Messages : 322
    Points : 535
    Points
    535
    Par défaut
    Je n'avais pas précisé le "else" histoire de ne pas faire tout le code

    Je ne sais plus si la variante dojo.byId fonctionne de la même manière pour les style.
    La variante fonctionne.

    Et au plaisir

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Juin 2010
    Messages : 80
    Points : 51
    Points
    51
    Par défaut
    Citation Envoyé par Daniel_Gibot Voir le message
    Bon j'ai testé un ptit truc je pense que ca peut convenir.

    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
    31
    32
    33
     
    //cree un objet store avec le contenu du json
    var authStore = new dojo.data.ItemFileReadStore({
    		jsId:'users',
    		data: { items: [
    					{ login:'ut1', mdp:'Alex'},
    					{ login:'ut2', mdp:'country'}
    				]}
                    //ou
                    //url:'monfichier.json'
    	});
            //permet de lire le contenu du store
    	authStore.fetch({
                    //requete ou l'on va ajouter les valeurs saisies dans les champs
    		query: {
    				login:'ut1', //champ login
    				mdp:'test'}, //champ mdp
                    //a la fin de la recherche
    		onComplete: function (items,request){
                            //on scanne le resultat contenu dans items
    			for (i = 0; i < items.length; i++) {
    			var item = items[i];
    				alert(authStore.getValue(item, "login"));
    			}
                            //si rien n'est trouve
    			if(i==0){
    				alert("mauvais login / mot de passe");
    			}
    		},
    		onError : function (error,request){
    			alert(error.message);
    		}
    	});
    bonsoir
    je reviens sur ce sujet ,car j'ai une erreur au niveau de la creation d'un objet store avec le contenu du json !
    en effet la creation d'un objet directement marche impec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ata: { items: [
    					{ login:'ut1', mdp:'Alex'},
    					{ login:'ut2', mdp:'country'}
    				]}
    mais parcontre pour ca ne marche pas !
    ca me sort l'erreur suivante
    voici mon fichier json
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    { identifier: 'auth',
      label: 'auth',
      items: [
    {
    			"login":'ut1',
                            "mdp":'Alex'
     
    		}
     
     
    ]}
    la premiere facon marche parfaitement ,mais j'ai besoin du fichier json ,car il me faut une fonction qui ecrit dans le fichier json (un formulaire d'ajout d'un nouveau compte) donc ajouter un login et un mdp au fichier Json via un formulaire . d'ailleur je serais reconnaissant si quelqun me montre comment le faire ,mais biensur aprés avoir resolu le premier problem

    merci d'avance

  10. #10
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2010
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2010
    Messages : 322
    Points : 535
    Points
    535
    Par défaut
    Bonjour,

    Tout d'abord, meilleurs vœux pour cette nouvelle année.

    As-tu essayé sans mettre des doubles quotes ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    { identifier: 'auth',
      label: 'auth',
      items: [
    {
    			login:'ut1',
                            mdp:'Alex'
     
    		}
     
     
    ]}

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Bogue affichage lors du lancement de mon application avec une SurfaceView
    Par metalm77 dans le forum Composants graphiques
    Réponses: 0
    Dernier message: 04/07/2016, 13h23
  2. Réponses: 2
    Dernier message: 17/05/2009, 07h28
  3. problème de blocage lors de démarrage
    Par leo13 dans le forum Ordinateurs
    Réponses: 16
    Dernier message: 05/05/2006, 19h07
  4. Créer un tableau lors de l'appel d'une fonction
    Par MiJack dans le forum Langage
    Réponses: 11
    Dernier message: 01/02/2006, 11h18
  5. erreur lors de demarrage de win98
    Par StyleXP dans le forum Windows 2000/Me/98/95
    Réponses: 5
    Dernier message: 23/01/2006, 10h03

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