Bonjour,

je suis entrain de faire une petite appli avec la formation php et j ai un petit soucis, j ai un formulaire avec un select et je voudrai qu'a l'ouverture de la page tout les select soit a vide. j'utilise la fonction du fichier Form.php de la formation mais là je doit dire que je ne voit pas ou je peux faire en sorte que cela fonctionne.

function select($id, $options = array()){
    $return = "<select id='$id' name='$id'>";
    foreach($options as $k => $v){
        $selected ='';
        if(isset($_POST->$id) && $k == $_POST->$id){
            $selected = ' selected="selected"';
        }
        $return .= "<option value='$k' $selected>$v</option>";
    }
    $return .= '</select>';
    return $return;
}

merci de votre aide.

Gilles

9 réponses


Vallyan
Réponse acceptée
<div class="large-3 columns">
    <label>Agences :</label>
    <select>
        <option value="" disabled selected>Please select an option</option>
        <?php foreach($agences_list as $key => $value): ?>
            <option value="<?php echo $key; ?>"><?php echo $value; ?></option>
        <?php endforeach; ?>
    </select>

Un truc comme ca ?

Bonjour,

Peux tu être plus explicite ? Qu'entend tu par select à vide ?

Cordialement

gilles40
Auteur

Bonsoir,

J'aimerai que dans le champ la valeur soit nulle et que lorsque l on clic sur la petite fleche la liste apparaisse, la cerise sur le gateau serai que je puisse mettre un placeholder avec par exemple "Choisissez une option".

merci de ton aide.

Gilles

Ben si tu veux que le champ soit vide, il suffit de mettre une <option> vide en premier, non ?
Pour ce qui est du place holder, au lieu de mettre une option vide, tu peux y mettre ton texte en ajoutant les attributs disabled et selected
http://codepen.io/anon/pen/oJHsB

ah .. bon ben si c'est la cas faut vraiment que j'aille me coucher je dis que des conneries moi ce soir :/

gilles40
Auteur

Bonsoir,

non je veux pas trop compliquer Vallyan est sur la bonne voie, maintenant je cherche comment mettre ma liste de mes valeur genere dans php dans le select

ben tu fais deja un foreach() ... tu veux autre chose ?

gilles40
Auteur

j ai ces donées:

/**
 * Récuperation liste des agences
 */
$select = $db->query('SELECT agences.id, agences.name, agences.numeric AS numagence FROM agences ORDER BY name ASC');
$agences = $select->fetchAll();
$agences_list = array();
foreach($agences as $agence){
    $agences_list$agence->numagence] = $agence->name;
}

et je cherche a mettre la liste là:

<div class="large-3 columns">
                    <label>Agences :</label>
                    <select>
                      <option value="" disabled selected>Please select an option</option>
                        <option value=""></option>
                        <!--<option value="option2">option 2</option>
                        <option value="option3">option 3</option>-->
                    </select>

j ai tourné le probleme dans tout les sens mais rien a faire

gilles40
Auteur

merci Vallyan c est exactement ça.

@+

Gilles