function display_search_categories($id, $categories)
{
    global $language, $cache_lang;

    echo '<select id="opt" name="cat" onchange="GetOptions(); GetCalendar();">';
    echo '<option value="0">'. $language['select_categories'] .'</option>';

    foreach($categories as $row)
    {
        $id_cat = (int) $row['id_cat'];
        $par_cat = (int) $row['par_cat'];

        if(isset($row['name_cat_'. $_SESSION['code_lang']]))
            $name_cat = stripslashes(htmlspecialchars($row['name_cat_'. $_SESSION['code_lang']], ENT_QUOTES));

        if($par_cat == 0)
        {
            if(!empty($id) && ($id == $name_cat || rewriting($id) == rewriting($name_cat)))
                echo '<option value="'. $name_cat .'" class="background-select-cat" selected>-- '. strtoupper($name_cat) .' --</option>';

            else echo '<option value="'. $name_cat .'" class="background-select-cat">-- '. strtoupper($name_cat) .' --</option>';
        }

        //Subategories

        $subcategories = $categories;

        foreach($subcategories as $row)
        {
            $id_subcat = (int) $row['id_cat'];
            $par_subcat = (int) $row['par_cat'];

            if(isset($row['name_cat_'. $_SESSION['code_lang']]))
                $name_subcat = stripslashes(htmlspecialchars($row['name_cat_'. $_SESSION['code_lang']], ENT_QUOTES));

            if($par_subcat == $id_cat)
            {
                if($id_subcat == $id)
                    echo '<option value="'. $id_subcat .'" selected>'. $name_subcat .'</option>';

                else echo '<option value="'. $id_subcat .'">'. $name_subcat .'</option>';
            }
        }
    }
    echo '</select> ';
}

Bonjour a vous ,

voila je suis débutant en Dev vraiment Novice je viens de commencer ma formation , Une Petite aide de votre part ça serait géniale pour avancer dans mon projet .

Je cherche a modifier un Select "le code en Haut" dans un menu recherche en Menu dropdown , exemple pour catégories de monsite sur image jointe en cette exemple https://codepen.io/waqasy/pen/mzwrmQ
Si je suis pas clair suis dsl , c'est le premeir pas que je cherche .

Merci à vous upload/1589015504-79815-sanstitre.png
Merci pour le conseil "variables global ", comme j'ai dis suis débutant je vais me penché vers ce coté la une autre fois .

Et pour Optgroup c'est pas vraiment ce que je recherche . Ce que je recherche c'est comme dans cette exemple sur l'image ou j'ai cliquer sur le champ select "matériels"ou on a récupérer les catégories , plusieurs colonnes genre Pop'up " avec jquery" peut être , j'ai regardé sur tout le net Rien peut être je saisis mal ce que je recherche sur google . Surtout m'orienter vers une piste .

Merci encore. upload/1589033579-79815-categories.png
Modifié par kabylot (09 May 2020 - 16:13)
Ce n'est certainement pas un select... En fait pour faire ce genre de chose, en général on "simule" un champ select (un div avec un cadre et une flèche), et en cliquant on fait apparaitre une div avec tous les menus et sous-menus qu'on veut (qui sont eux-mêmes des div, ou bien des listes ul / li).
Ça demande un peu de javascript (détecter le clic sur le faux select et remettre la valeur choisie à l'intérieur) et du CSS pour gérer l'affichage (cherche sur le net comment faire une "modale" en CSS, tu vas trouver ton bonheur...)
Bon courage!
Modifié par Mathieu8337 (09 May 2020 - 17:16)
Modérateur
Je comprends mieux ce que tu veux faire.....

Mathieu8337 a écrit :

Ça demande un peu de javascript (détecter le clic sur le faux select et remettre la valeur choisie à l'intérieur) et du CSS pour gérer l'affichage (cherche sur le net comment faire une "modale" en CSS, tu vas trouver ton bonheur...)
Bon courage!


Nous sommes dans un formulaire classique ! Donc, non, pas de js ! ça n'est pas du tout nécessaire. <input:checkbox> ou <input:radio> sont préconisés pour faire ce genre de chose. En ce qui concerne la sémantique à adopter pour englober le label et l'input, tu as plusieurs choix, div, p, ul + li. Si c'est pour faire de la recherche globale, une querystring suffit amplement.
Modifié par niuxe (10 May 2020 - 10:56)