lier deux listes déroulantes

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] lier deux listes déroulantes

    bonsoir
    je cherche à lier mes deux listes déroulantes comme région/département
    mais je ne trouve pas de tuto
    merci LJ

    Code PHP:
    //*****liste déroulante lexique*****
    $db0 Factory::getDbo();
    $query0 $db0->getQuery(true);
    $query0->select($db0->quoteName(array('id''mot','ts_m''ts_g''ts_pl''ts_or''ts_com''tg_m','tg_g','tg_pl','tg_or','tg_com''lexique')))
    ->
    from($db0->quoteName('#__tasawaq'))
    ->
    order($db0->quoteName('lexique') )
    ->
    groupby ('lexique');

    $db0->setQuery($query0);
    $results0 $db0->loadAssocList("lexique");

    //*****liste déroulante mot*****
    $db Factory::getDbo();
    $query $db->getQuery(true);
    $query->select($db->quoteName(array('id''mot','ts_m''ts_g''ts_pl''ts_or''ts_com''tg_m','tg_g','tg_pl','tg_or','tg_com''lexique')))
    ->
    from($db->quoteName('#__tasawaq'))
    ->
    order($db->quoteName('mot') );

    $db->setQuery($query);
    $results $db->loadAssocList("mot"); 
    Dernière édition par laurent00 à 13/04/2021, 21h16
    mon avatar : http://www.ingall-niger.org

  • #2
    Bonjour,

    Peut-être https://docs.joomla.org/SQL_form_field_type/fr

    Attention : il y a un vieux ticket sur ce sujet et je ne suis pas sûr qu'il soit corrigé : https://github.com/joomla/joomla-cms/issues/22241

    Pascal
    If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

    Commentaire


    • #3
      merci mais mes deux listes déorulantes sont écrites comme cela, je n'ai pas fait de field
      Code PHP:
      <strong><select class="test1" style="width: 265px;" name="lexique">
      <option value=""> - tous les lexiques - </option>
      <?php foreach ($results0 as $row0) { ?>
      <option value="<?php echo $row0["lexique"];?>"
      <?php echo isset($_POST["lexique"])&&$_POST["lexique"]==$row0["lexique"]?" selected":"";?>>
      <?php echo $row0["lexique"];?>
      </option>
      <?php ?>
      </select>
      <input type="submit" value="Choisir" name ="choix"/>
      </strong>
      <?php $lexique $_POST["lexique"];?>
      <br/>
      <strong><select class="test1" style="width: 265px;" name="mot">
      <option value=""> - chercher un mot et l'écouter - </option>
      <?php foreach ($results as $row) { ?>
      <option value="<?php echo $row["mot"];?>"
      <?php echo isset($_POST["mot"])&&$_POST["mot"]==$row["mot"]?" selected":"";?>>
      <?php echo $row["mot"];?>
      </option>
      <?php ?>
      </select>
      <input type="submit" value="Traduire" name ="traduire"/>
      </strong>
      <?php $mot $_POST["mot"];?>
      <?php $lexique 
      $results[$mot]["lexique"];?>
      LJ
      mon avatar : http://www.ingall-niger.org

      Commentaire


      • #4
        Bonjour Laurent,

        Je ne suis pas sur d'avoir bien compris ton besoin, mais si tu fais ton code, il faut que tu récupères l'info de ta première sélection et que tu l'insert par du WHERE dans ta deuxième requête.

        Commentaire


        • #5
          oui je comprends, mais je veux bien un exemple, car la première requête retourne un tableau avec liste et la deuxième doit afficher tous les mots ou,lorsque iol y aura eu un choix dans la première les mots en GroupBy j'imagine ...
          LJ
          mon avatar : http://www.ingall-niger.org

          Commentaire


          • #6
            ok j'ai fait ceci qui semble fonctionner
            Code PHP:
            <strong><select class="test1" style="width: 265px;" name="lexique">
            <option value=""> - tous les lexiques - </option>
            <?php foreach ($results0 as $row0) { ?>
            <option value="<?php echo $row0["lexique"];?>"
            <?php echo isset($_POST["lexique"])&&$_POST["lexique"]==$row0["lexique"]?" selected":"";?>>
            <?php echo $row0["lexique"];?>
            </option>
            <?php ?>
            </select>
            <input type="submit" value="Choisir" name ="choix"/>
            </strong>
            <?php $lexique $_POST["lexique"];?>


            <?php
            //*****liste déroulante mot*****

            $db Factory::getDbo();
            $query $db->getQuery(true);
            if (
            $_POST["lexique"] == null) {
            $query->select($db->quoteName(array('id''mot','ts_m''ts_g''ts_pl''ts_or''ts_com''tg_m','tg_g','tg_pl','tg_or','tg_com''lexique')))
            ->
            from($db->quoteName('#__tasawaq'))
            ->
            order($db->quoteName('mot') );

            $db->setQuery($query);
            $results $db->loadAssocList("mot");
            }
            else {
            $query->select($db->quoteName(array('id''mot','ts_m''ts_g''ts_pl''ts_or''ts_com''tg_m','tg_g','tg_pl','tg_or','tg_com''lexique')))
            ->
            from($db->quoteName('#__tasawaq'))
            ->
            order($db->quoteName('mot'))
            ->
            where($db->quoteName('lexique').' = '.$db->quote($lexique));

            $db->setQuery($query);
            $results $db->loadAssocList("mot");
            }
            mon avatar : http://www.ingall-niger.org

            Commentaire

            Annonce

            Réduire
            Aucune annonce pour le moment.

            Partenaire de l'association

            Réduire

            Hébergeur Web PlanetHoster
            Travaille ...
            X