Weblivre.net - Informação em Primeiro Lugar

Assine nosso RSS

Sorteio

Concorra a três cursos on-line totalmente grátis:

1. Web Marketing

2. Técnicas de Vendas

3. Marketing Pessoal

Clique aqui para participar.

Dicas de Leitura

Decisões com B.I. (Business Intelligence) Aprenda a se Comunicar com Habilidade e Clareza Superdicas para Falar Bem em Conversas e Apresentações Cd Rom Info Especial Excel

Newsletter

Receba notícias e novidades em seu e-mail.

Publicado em 27/02/2006 - 8 comentários - Ler artigos relacionados - Você está em: Colunas » Dreamweaver

Combo Dinâmico – Parte 2

Veja como criar aquele famoso combo dinâmico que carrega outro combo pelo Dreamweaver

 

Grau de Dificuldade: 7

 

Nesse artigo vamos continuar a configuração do famoso Combo Dinâmico, cujo valor escolhido no primeiro combo determina a composição do segundo. Para quem pegou o trem andando, sugiro a leitura do primeiro artigo.

 

Em seguida, crie um novo arquivo .php no Dreamweaver e cole o código abaixo:

 

   

<?   

require_once('Connections/conecta.php');

mysql_select_db($database_conecta, $conecta);

$estado = $_GET['estado'];   

$auxsql = "SELECT DISTINCT nome FROM cidades WHERE uf ='{$estado}' order by id";   

$sql = mysql_query($auxsql);   

if(!$sql){echo mysql_error();exit();}  

?>   

<?

require_once('while.js'); ?>

 

Onde:

 

Clique para ampliar...

 

require_once('Connections/conecta.php'); -  include da conexão com o banco.

 

mysql_select_db($database_conecta, $conecta); - seleção do banco.

 

$estado = $_GET['estado']; - variável que armazena o estado escolhido no primeiro combo.

 

$auxsql = "SELECT DISTINCT nome FROM cidades WHERE uf ='{$estado}' order by id"; - consulta de acordo com o parâmetro “estado” escolhido no primeiro banco.

 

require_once('while.js'); - include do arquivo que monta preenche o segundo combo.

 

Salve essa página acima como “combo2.php” e crie um novo arquivo javascript que será chamado “while.js”, cujo código-fonte segue abaixo:

 

while.js:

 

<script>   

   loc = new Array(<?=mysql_num_rows($sql)?>)   

   for (i=0; i < <?=mysql_num_rows($sql)?>; i++) {   

          loc[i] = new Array(2)   

                  for (j=0; j < 2; j++) {   

              loc[i][j] = "0"   

            }   

    }   

   

    <? $j = 0;   

      while ($linha = mysql_fetch_array($sql)) {?>   

       loc[<?=$j?>][0] = "<?=$linha[0]?>";   

       loc[<?=$j?>][1] = "<?=$linha[0]?>";   

       <?$j++;   

       }   

    ?>   

    parent.inicia();    

</script>

 

É isso aí turma, esperam que tenham gostado, qualquer dúvida enviem um email para ronaldosdb@weblivre.net.

 

Um forte abraço,

Ronaldo dos Santos Silva

 

Autor: Ronaldo dos Santos Silva

Compartilhe:

Comentários

Comente este artigo!

Cezar Amorim em 25/06/2008
Gostei muito do seu artigo, estava trabalhando nessa parte do site, porem tambem para na Carregando.... você poderia me ajudar se possível com urgencia em como resolver o problema. O link para a instrução sdq não esta funcionando. desde ja agradeço e parabéns

Julio Cesar em 05/12/2007
Pessoal, resolvi o problema "Aguarde...o combo está sendo carregado..." No arquivo "combo2.php" corrija a linha ERRADA: $auxsql = "SELECT DISTINCT nome FROM cidades WHERE uf ='{$estado}' order by id"; CORRETO: $auxsql = "SELECT DISTINCT nome FROM cidades WHERE uf LIKE '$estado' ORDER BY id"; Outro detalhe no arquivo "combo2.php", as linhas abaixo irão mudar de acordo com a sua conexão com o seu banco de dados: require_once('Connections/conecta.php'); - include da conexão com o banco. mysql_select_db($database_conecta, $conecta); - seleção do banco. Dica: Pegue como exemplo a conexão do banco usada no arquivo "combo1.php" []´s JC

Luiz Vieira em 25/10/2007
Não funciona... para em "Aguarde...o combo está sendo carregado" não entendi o motivo...

Wanderlan Lima em 05/08/2007
Fiz tudo conforme descrito no tutorial, mas acabou não rodando. Como nosso amigo acima, Vinicius, parou em "Aguarde...o combo está sendo carregado" onde éu errei ? valeu.

B. Gates em 05/07/2007
Muito bom o tutorial! Funcionou, mas vale ressaltar aos iniciantes que vocês devem fazer modificações no código, por exemplo, a forma como o autor se conecta à sua base de dados é diferente da forma como devemos fazer, cada um em seu micro. DICA: Crie um arquivo .php que seja a configuração de conexão, então no momento que exigir um INCLUDE ou REQUIRE vc substitui pelo nome de seu arquivo. No mais, parabens, excelente!

Luis em 18/06/2007
Meu caro seu post foi-me muito util, só tens uma coisinha. Como vou agarrar o value da cidade na combo1, para inserir na base de dados, sendo o valor o id de cidades.

Vinícius Rocha em 19/05/2006
Ronaldo, fiz tudo conforme descrito no tutorial, mas acabou não rodando. Parou em "Aguarde...o combo está sendo carregado" Você teria alguma noção de onde pode estar ocorrendo o erro? Obrigado.

José Augusto em 08/05/2006
Ronaldo bom dia! Gostei muito de sua materia mas estou comesando agora e gostaria de saber como fazer este mesmo procedimento em asp. Desde já agradeço.

2004-2008 Weblivre.net Todos os direitos reservados.

Quem somos | Política de Acesso | Anuncie | Na Mídia | Seja um Colunista | Sugestão de Pauta | Fale Conosco

Idealização: Webla - Comunicação Digital