web-dev-qa-db-fra.com

Dropdown valeur par défaut

Salut ma liste déroulante obtenir la valeur de code ci-dessous:

public function getFloorsHTML() {
     $jinput = JFactory::getApplication()->input;
     $db = JFactory::getDbo();
     $query = $db->getQuery(true);
     $myflrs = $jinput->get ('fvalue');
     $query->select($db->quoteName(array('id', 'f_name')));
     $query->from($db->quoteName('#__pk_flrs'));
     $query->where($db->quoteName('bldg')." = ".$db->quote($myflrs));
     $db->setQuery($query);
     $results = $db->loadObjectList();
     foreach ($results as $result) 
     {
       echo '<option value="' . $result->id . '" > ' . $result->floor_name.'</option>'; 
      }
    exit; 
}

Le code fonctionne bien, mais comment puis-je avoir la valeur par défaut "Please Select"?

2
allogos

Voici la réponse:

echo '<option value="">Please Select</option>';
foreach ($results as $result) 
{
   echo '<option value="' . $result->id . '" > ' . $result->floor_name.'</option>'; 
}
1
allogos

Juste pour aborder certains problèmes de code ici, au lieu d’utiliser une instruction exit dans votre fonction, vous devez renvoyer les valeurs à l’appel de la fonction et y exécuter votre boucle.

Par exemple:

In your default.php file:
<?php $floors = $model->getFloorsHTML();?>
<select name="floors">
    <option value="">Please Select One</option>
    <?php foreach($floors as $floor){?>
        <option value="<?php echo $floor->id;?>"><?php echo $floor->floor_name;?></option>
    <?php }?>
</select>

In your model:
public function getFloorsHTML()
{
     $jinput = JFactory::getApplication()->input;
     $db = JFactory::getDbo();
     $query = $db->getQuery(true);
     $myflrs = $jinput->get('fvalue','','int');
     $query->select("id, f_name");
     $query->from("#__pk_flrs");
     $query->where("bldg = ".$db->quote($myflrs));
     $db->setQuery($query);
     $results = $db->loadObjectList();
     return $results;
}
1
Terry Carter