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

Langage PHP Discussion :

[PHP-JS] test d'existance de 2 options dans 2 select differents


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 37
    Points : 38
    Points
    38
    Par défaut [PHP-JS] test d'existance de 2 options dans 2 select differents
    Salut,

    Je voudrais savoir comment faire pour tester si la une option d'un select existe dans un autre select ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <select name="list1[]">
    <option value="<? echo $compteur ?>">homer.simpson</option>
    </select>
     
    <select name="list2[]"><option value="<? echo $user_name ?>">homer.simpson</option></select>
    Dans le cas present on a homer.simpson dans les 2 listes, alors il faudrait qu'il soit afficher en une couleur differente, alors comment faire pour tester s'il existe dans les 2 et comment modifier sa couleur ( pour la couleur avec le if...else je pensai ne pas afficher la meme option, ajouter un style="color:yellow" dans <option> )

    Merci de m'aider.

  2. #2
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    C'est en javascript qu'il va te falloir parcourir tes deux listes pour voir si des valeurs sont communes.
    (A moins que tu veuilles faire cette vérification au moment où tu la crées depuis php ???)

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Points : 1 504
    Points
    1 504
    Par défaut
    Pour éviter les doublons, je verrai bien ceci:
    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
     
    $tab1=array('val1','val2')
    $tab2=array('val2','val3');
    <select name="select1">
      foreach($tab1 as $val){
        echo '<option value=".$val.">'.$val.'</option>';
      }
    </select>
    <select name="select2">
      foreach($tab2 as $val2){
        if(in_array($val2,$tab1)){  
       echo '<option value=".$val2.">'.$val2.'</option>'; //a mettre d'une autre couleur car doublon avec le premier tableau.
       }else
       {
         echo '<option value=".$val2.">'.$val2.'</option>';
       }
    }
    </select>

  4. #4
    Nouveau membre du Club
    Inscrit en
    Février 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 37
    Points : 38
    Points
    38
    Par défaut
    Oui c'est au moment où je cree via mon pHp ^^
    J'ai imbriquer 2 FOR et dans le dernier FOR j'ai mis un IF mais ca marche poa
    Je vais tester ta méthode Raideman. ^^

    Merci a vous deux d'avoir repondu aussi vite .

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Points : 1 504
    Points
    1 504
    Par défaut
    D'ailleurs, j'ai fait mass erreur de syntaxe dans mon code, c'est plutot comme ceci:
    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
     
    <?php
    $tab1=array('val1','val2');
    $tab2=array('val2','val3');
     
    echo '<select name="select1">';
      foreach($tab1 as $val){
        echo '<option value=".$val.">'.$val.'</option>';
      }
    echo '</select>';
    echo '<select name="select2">';
      foreach($tab2 as $val2){
        if(in_array($val2,$tab1)){
       echo '<option value=".$val2.">'.$val2.'</option>'; //a mettre d'une autre couleur car doublon avec le premier tableau.
       }else
       {
         echo '<option value=".$val2.">'.$val2.'</option>';
       }
    }
    echo '</select>';
    ?>

  6. #6
    Nouveau membre du Club
    Inscrit en
    Février 2007
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 37
    Points : 38
    Points
    38
    Par défaut
    Merci ^^ J'ai adapté le code et fait quelque modification ^^
    Sa marche niquel Chrome !!

    Merci vous êtes trop balaise !! Avant je me suis pris la tete avec les boucles FOR mais a force de bouclé le script ne s'executer pas entierement

    Maintenant tout est OK

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

Discussions similaires

  1. [Toutes versions] Test d'existence d'un champ dans une colonne
    Par sylvain5923 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/11/2010, 20h28
  2. test d'existence d'une table dans une bd mysql
    Par kafana dans le forum JDBC
    Réponses: 5
    Dernier message: 25/03/2006, 22h19
  3. Réponses: 2
    Dernier message: 08/12/2005, 15h41
  4. [html/css]coloration des options dans un select
    Par the_edge dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 04/05/2005, 16h19
  5. Test d'existence d'une valeur dans une table
    Par dleu dans le forum Bases de données
    Réponses: 9
    Dernier message: 29/12/2004, 11h38

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