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

jQuery Discussion :

Sélectionner un nombre d'étoiles selon la note


Sujet :

jQuery

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut Sélectionner un nombre d'étoiles selon la note
    Bonjour,

    J'ai fait un système de notation et je souhaite récupérer ma donnée dans ma base (ça c'est bon) et selon la note, mettre le nombre d'étoiles qui correspond en jaune pour pouvoir ensuite modifier la note.

    Voici mon javascript:
    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    onload = function(){
      init();
    };
    // --------------
    var StarOutSrc = 'images/starOut.png';
    var StarOnSrc = 'images/starOver.png';
    var n = 5;
    // --------------
    function init(){
    	var html = '';
    	for (i=0; i<n; i++){
    		id = i+1;
    		html += '<img src="'+StarOutSrc+'" ';
    		html += 'id="star" value="off" ';
    		html += 'onMouseOver="over('+id+');" ';
    		html += 'onMouseOut="out('+id+');" ';
    		html += 'onClick="on('+id+')"/></a>'
    	}
    	document.getElementById("note").innerHTML = html;
    }
    // --------------
    function over(nb){
    	elemClassement = document.getElementById("note");
    	tabImg = elemClassement.getElementsByTagName("img");
     
    	if (nb > 0){
    		for (i=0; i<nb; i++){
    			tabImg[i].src = StarOnSrc;
    		}
    	}
    	for (i=nb; i<n; i++){
    		tabImg[i].src = StarOutSrc;
    	}
    }
    // --------------
    function out(nb){
      elemClassement = document.getElementById("note");
      tabImg = elemClassement.getElementsByTagName("img");
     
      for (i=0; i<nb; i++){
        tabImg[i].src = StarOutSrc;
      }
      for (i=0; i<n; i++){
        if (tabImg[i].value == "on")
           tabImg[i].src = StarOnSrc;
      }
    }
    // --------------
    function on(nb){
      elemClassement = document.getElementById("note");
      tabImg = elemClassement.getElementsByTagName("img");
     
      for (i=0; i<nb; i++){
        tabImg[i].src = StarOnSrc;
        tabImg[i].value="on";
      }
      for (i=nb; i<n; i++){
        tabImg[i].src = StarOutSrc;
        tabImg[i].value = "off";
      }
      // ICI, on rempli l'input hidden avec la valeur
      document.getElementById('notehidden').value = nb;
    }
    // --------------
    Champs qui contient les étoiles
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="hidden" id="noteh" name="note" value="<?php echo $ligne['note']?>"/>
    <div id="note" name="cls"></div>

    Merci de votre aide

  2. #2
    Membre expérimenté Avatar de stephanegib2
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2011
    Messages : 152
    Par défaut
    C'est quoi la difficulté que tu rencontres ?

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut
    Donc, quand je lance un formulaire pour création, c'est la fonction init qui est appeler avec les étoile vide
    Et là, je suis dans le cas d'une modification, je cherche donc un moyen d'afficher un nombre d'étoile colorié égal à ma note.
    par exemple, si j'ai 3: je doit avoir les 3 première en jaunes et les deux autres blanches.
    Je c'est que je doit refaire une fonction pour sa mais je vois pas comment faire

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut
    J'ai essayé de faire sa:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function charge(nb){
      var html = '';
      for (i=0; i<n; i++){
        id = i+1;
        html += '<img src="'+StarOutSrc+'" ';
        html += 'id="star" value="off" ';
        html += 'onMouseOver="over('+id+');" ';
        html += 'onMouseOut="out('+id+');" ';
        html += 'onClick="on('+id+')"/></a>'
      }
      document.getElementById("note").innerHTML = html;
    }

  5. #5
    Membre expérimenté Avatar de stephanegib2
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2011
    Messages : 152
    Par défaut
    Pourquoi le faire en javascript ?

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut
    La note je la garde dans une base de données.
    Tu voudrais la faire en quoi?

  7. #7
    Membre expérimenté Avatar de stephanegib2
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2011
    Messages : 152
    Par défaut
    coté serveur. Après je ne sais pas si il y a une raison particulière qui te fait utiliser javascript.

  8. #8
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut
    Vous me conseiler de faire comment?

  9. #9
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    j'ai déplacé cette discussion dans le forum jQuery.

    Citation Envoyé par totot Voir le message
    ... et je souhaite récupérer ma donne note dans ma base (sa c'est bon) et selon la note, mettre le nombre d'étoile qui correspond en jaune pour pouvoir ensuite modifier la note.
    Par contre, si tu as des questions concernant PHP, je t'invite à ouvrir une AUTRE discussion dans le forum PHP.

  10. #10
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut
    Pour la récupérer, c'est bon, j'ai fait un select.
    Maintenant c'est pour les étoiles:
    si j'ai 3, je veux les trois première en jaune et les deux autre en blanches

  11. #11
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    si tu as des questions concernant PHP, je t'invite à ouvrir une AUTRE discussion dans le forum PHP.
    N.B. "c'est bon" ne permet pas de t'aider à corriger ton code...

  12. #12
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut
    Pour récupérer ma note j'ai fait sa:
    Select note
    From free

    Sa me la récupère bien.
    Mais je vois pas comment faire ce que je t'ai dit

  13. #13
    Membre expérimenté Avatar de stephanegib2
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2011
    Messages : 152
    Par défaut
    Il faut voir dans quel langage tu veux le faire.
    A mon avis, si après le chargement de la page tes votes ne changent pas, il n'y a pas de raison de le faire en js.

  14. #14
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut
    En faite, au début, j'avais un formulaire de création pour un free ou je lui ai mis des information est une note.
    Maintenant, je suis dans le cas d'une modification, j'ai fait un select pour récup les info dans la bdd et je souhaite afficher sa note sous forme d'étoile pour si je le souhaite pour la modifier. Le problème c'est que je n'arrive pas à mettre en jaune le nombre d'étoile qui correspond à sa note

  15. #15
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    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 !

  16. #16
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut
    J'ai déjà regarder ce post et je comprend pas ce que tu fait. Je cherche à m'inspirer des fonctions javascript que j'ai poste plus haute

  17. #17
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut
    J'ai essayer de m'inspiré de ce lien là mais rien y fait:
    http://www.developpez.net/forums/d34...ation-etoiles/
    J'ai tout repris que qui été donné mais sa fonctionne pas du tout ce script: les étoile ce coche même pas.
    Sa fait 5 jours que je suis dessus

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 26/10/2009, 12h03
  2. Réponses: 4
    Dernier message: 09/07/2008, 09h43
  3. recherche du nombre de cellule selon 2 critères
    Par lee.tsunamy dans le forum Excel
    Réponses: 1
    Dernier message: 18/06/2008, 01h48
  4. [C#] Comment sélectionner un item de listview selon des critères
    Par beufreecasse dans le forum Windows Forms
    Réponses: 1
    Dernier message: 26/10/2006, 20h34
  5. Réponses: 6
    Dernier message: 22/06/2005, 13h24

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