PHP: Carregando um combobox com array de meses e setando o mês selecionado

Neste post você aprenderá como carregar um combobox com dados vindo de um array; este array contém os meses do ano.

Ao selecionar o mês, via javascript (evento onchange), é dado um submit. O valor selecionado é passado a variável $mes_selecionado via $_POST[‘list’]. Pensando no usuário que pode desativar o javascript do navegador, foi colocado um botão para disparar o submit.

Se o valor selecionado for igual ao mês contido no array, este mês recebe o atributo selected.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Combobox Dinâmico</title>
</head>
<body>
<? 
   $mes_selecionado = $_POST['list']; 
   $arr_meses = array(
      '01' => 'Janeiro',
      '02' => 'Fevereiro',
      '03' => 'Março',
      '04' => 'Abril',
      '05' => 'Maio',
      '06' => 'Junho',
      '07' => 'Julho',
      '08' => 'Agosto',
      '09' => 'Setembro',
      '10' => 'Outubro',
      '11' => 'Novembro',
      '12' => 'Dezembro'
   );
?>
<form name="frm_meses" action="" method="post">
      <select name="list" onchange="document.frm_meses.submit();">
      <option value="">Selecione o mês...</option>
      <?
      foreach($arr_meses as $mes => $meses) {             
	 print("<option value=\"$mes\"");
         if ($mes == $mes_selecionado){ print("selected"); }
         print(">$meses ($mes)");
      }
      ?>
      </select>
      &nbsp;&nbsp;<input type="submit" name="pesquisar" value="Pesquisar" class="busca" />
</form>
</body>
</html>

3 comentários em “PHP: Carregando um combobox com array de meses e setando o mês selecionado

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *