Bom, sabe toooda aquela burocracia que agente faz tooooda vez que vai gerar um select-option via PHP?
Pois é, que tal reduzir isto em apenas uma funçãozinha simples pra chamar rapidamente e não ter que ficar se preocupando com executar a SQL, fazer o while do recordset, fazer o IF pra ver qual option vai ter o selected, etc??
Acredite: isto facilita pra caramba. Reduz a complexidade e o tamanho do código.
A função que gera os options. Guarde em sua biblioteca de funções:
(Código)
<? function geraOptions($sql,$campo_valor,$campo_label,$valor_selecionado,$tabs=' '){
//by Nairon JCG - Micox - elmicox.blogspot.com - [email protected] - 12/01/07
$reca = mysql_query($sql);
$opts = "\r\n";
if($reca){
while($row = mysql_fetch_assoc($reca)){
if($row[$campo_valor]==$valor_selecionado){
$selected = "selected='selected'";
}else{
$selected = "";
}
$opts .= $tabs." <option value='".$row[$campo_valor]."' $selected>".$row[$campo_label]."</option>\r\n";
}
}
return $opts;
}
?> $sql - é a sql pra gerar os options
$campo_valor - o campo na sua tabela do BD que irá doar os valores para os VALUES dos options.
$campo_label - o campo na sua tabela do BD que irá doar os valores para os TEXTOS dos options.
$valor_selecionado - Se tal option tiver o value igual ao $valor_selectionado, ele ficará com selected=selected
$tabs - pra deixar seu código fonte que será gerado mais bonitim...
Exemplo de uso:
CODE
echo "<select id='estado' name='estado'>";
echo geraOptions('SELECT * FROM estados','id_estado','nome_estado',$cod_estado_cliente,' ');
echo "</select>";
fonte
www.webly.com.brEscrito por
Micox