Ir para conteúdo
Fórum Script Brasil
  • 0

Popular Combobox


Gilbeto F. T

Pergunta

Olá,

Estou começando com PHP e preciso popular uma combobox com dados vindo de uma tabela em um banco de dados já fiz várias tentativas e nada. Minha última é:

// Preenchendo a Combo UF com dados da tabela
while($Row = mssql_fetch_array($Result))
{
    for ($I = 1; $I <= 27; $I++)
   {
       echo "<option value=$Row[$I]></option>"; 
   }
}

e não funcionou. Alguma dica ?????.

Obrigado.

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

Para Popular:

while($Row = mssql_fetch_array($Result))

echo "<option value=$Row['']></option>";

}

Não Entendi para que o for, voce quer limitar o numero de options em 27?

Para usar da forma que você fez tem que usar o segundo parametros do mssql_fetch_array

array mysql_fetch_array ( resource result [, int result_type] )

Para indicar que você vai pegar o resultado pelo indice associado, e não pelo nome do campo

$row = mysql_fetch_array($result, MYSQL_NUM),

Mesmo assim não vai dar certo que pela logica que você fez você vai ter os nomes de estados repetidos 27 vezes, por que a cada passagem so wihle, você vai executar o for 27 vezes com o mesmo valor:

while....( ate o total de registros)pega o primero registro da array

for(.... até 27 grava o valor do wilhe

}

Editado por itibere
Link para o comentário
Compartilhar em outros sites

  • 0

Olá,

Sua solução funcionou....

// Preenchendo a Combo UF com dados da tabela
echo "<select name=\"cboUF\">";
while($Row = mssql_fetch_array($Result))
{
    $cboUF = $Row['UF'];
    echo "<option value=\"$cboUF\">$cboUF</option>";
}
echo "</select>";

porém, minha combobox que se chama cboUF, está em um formulário

que chama essa função. Dessa forma, ele está criando uma nova combo.

Alguma outra dica ?????

Obrigado.

Editado por ESerra
Utilize as tags [code] [/code]
Link para o comentário
Compartilhar em outros sites

  • 0

Tem... só que você vai ter que enviar algum dado para a outra página, por exemplo:

a.php

b.php

Na a.php tem lá um select com os estados e a respectiva sigla no value, o action do formulário na a.php é a b.php, ai na b.php você resgata o que vir do select que está na a.php, faz a pesquisa no BD e monta o select de acordo com o que já foi mostrado.

Link para o comentário
Compartilhar em outros sites

  • 0

OK....

No form a:

<form name="iCidade" method="post" action="../../FRMCadastro/Forms/FRMCadCidades.php">
 <?php
         if(file_exists("../../Conexao.php"))
         {
            require('../../Conexao.php');
            mssql_select_db($DB, $SQLConnect);
            $Select = "select * from tbUF";
            $Result = mssql_query($Select);
            while($Row = mssql_fetch_array($Result))
            {
    echo("$Row[UF]");
             }
         }
?>
No form b:
<form name="frmCadCidades" method="post" action="">
     <table align="left%" width="100%" border="0">
           <tr>
                  <td height="27" class="Arial8Black">UF</td>
      <td colspan="3">
                        <select name="cboUF" class="Arial8Blue">
                                         <?php  echo "<option value='".$Row['$cboUF']."'>".$Row['UF']."</option>";?>
                  </select>
       </td>
     </table>
</form>

Dessa forma as UF´s estão sendo exibidas fora do combo.

Alguma dica ?????

Obrigado.

Editado por ESerra
Utilize as tags [code] [/code]
Link para o comentário
Compartilhar em outros sites

  • 0

Se você olhar o exemplo que eu coloque lá em cima, vai ver que os options do select são montados dentro do laço, o que você está fazendo é simplesmente mandar imprimir o que vem do laço, mas não dentro do option que compõe o select...

Link para o comentário
Compartilhar em outros sites

  • 0

Olá,

Preciso preencher uma combobox que está em umna outra página mas estou com dificuldades. Vejam a fragmento de ´código das páginas.

frmCadCidades.php
<form name="frmCadCidades" method="post" action="../../FRMCadastro/Insert/iCidade.php">
  <table align="left%" width="100%" border="0">
        <tr>
             <td height="27" class="Arial8Black">UF</td>
             <td colspan="3">
                   <select name="cboUF" class="Arial8Blue">
               <option value = "[0]">Selecione uma UF</option>
                        <?php echo "<option value = '".$Row['$cboUF']."'>".$Row['UF']."</option>";?>
                   </select>
             </td>
        </tr>
   </table>
</form>
iCidade.php
<form name="iCidade" method="post" action="">
    <?php
           require('../../Conexao.php');
           mssql_select_db($DB, $SQLConnect);
           $Select = "select * from tbUF";
           $Result = mssql_query($Select);
           while($Row = mssql_fetch_array($Result))
           {
               echo("$Row[UF]");
            }
      ?>
</form>

Preciso passar os dados do select da página iCidade para preencher a combo que está na página frmCadCidades.

Alguma dica ????

Obrigado.

Editado por ESerra
Utilize as tags [code] [/code]
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...