Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 96
Nome: Júnior
Descrição do site: Voltado para o Desenvolvimentos de Sistemas
Localização: Goiania
Contato:

Criação de Selects multiplos

30-03-2009 18:07

Boa tarde a todos do forum depois de muito procurar e achei um solução para o meu problema e eu estou aqui passando a respostas das minhas dores de cabeça

bem esse codigo esta um pouco soniado por falta de tempo de organiza mais qualquer duvida e so falar eu vou esta organizando ele depois

bem o que esse codigo faz se ajuda na criação de varios select como assim ex:
o select 1 recebe uma consulta a banco depois quando a pessoa escolher o que ela quer vai passa o valor para o select 2 depois 3 ...

qualquer duvidas e so falar


<?php //+===========================================================+ // | Este script foi desenvolvido por:                        | // | Winston Hanun Júnior                                     | // | msn: zeuzlinux@hotmail.com                               | // | Por Favor mantenha os direitos autorais.                 | // | Data da Criação: 27/03/2009                              | //+===========================================================| //-----------------------------------------------------------------------------------------------------------------------------------// // Conexao com o banco de dados require ("../../funcoes/configuracao.php"); //-----------------------------------------------------------------------------------------------------------------------------------// // Include com a classe XAjax include_once("../../funcoes/xajax.inc.php"); // Instantiaa o xajax object $xajax = new xajax($_SERVER['PHP_SELF']); // Registra a funo processForm() para o XAjax $xajax->registerFunction("processForm"); // Para cada Select dever criar uma função em ajax para tratar os dados recebidos // Função que Carrega as Categorias diacordo com o Ano function carregaCategoria($ano) {     $objResponse = new xajaxResponse();     if($ano != "")     {         // Em cada select de sub_categoria vc deve usar o onChange="javascript:aguardeSub();xajax_carregaSub_Categoria(this.value);" para chamar o proximo         $html = '<select name="categoria" class="formulario" style="width:300px;" onChange="javascript:aguardeSub();xajax_carregaSub_Categoria(this.value);"><option value="">- Escolha uma categoria -</option>';         $resultq = mysql_query("SELECT * FROM prestacao_contas_categoria WHERE id_ano = '$ano'");         while($categoria = mysql_fetch_assoc($resultq))         {             $html .= '<option value="'.$categoria['id'].'">'.utf8_encode($categoria['nome']).'</option>';         }         $html .= '</select>';     }     else     {         $html = '<select name="categoria" "class="formulario" style="width:300px;"><option value="">- Escolha um ano -</option></select>';     }     $objResponse->addAssign("categorias","innerHTML",$html);     return $objResponse->getXML(); } // Registra a funo carregaCategoria() para o XAjax $xajax->registerFunction("carregaCategoria"); // Função que Carrega as Sub_Categoria diacordo com Categoria function carregaSub_Categoria($categoria) {     $objResponse_sub = new xajaxResponse();     if($categoria != "")     {         // Se eu fosse colocar mais select deveria colocar onChange="javascript:aguardeSub();xajax_carregaSub_Categoria(this.value);"         $html = '<select name="sub_categoria" class="formulario" style="width:300px;"><option value="">- Escolha uma sub_categoria -</option>';         $resultq = mysql_query("SELECT * FROM prestacao_contas_sub_categoria WHERE id_categoria = 2");         while($sub_categoria = mysql_fetch_assoc($resultq))         {             $html .= '<option value="'.$sub_categoria['id'].'">'.utf8_encode($sub_categoria['titulo']).'</option>';         }         $html .= '</select>';     }     else     {         $html = '<select name="sub_categoria" "class="formulario" style="width:300px;"><option value="">- Escolha um sub_categoria -</option></select>';     }     $objResponse_sub->addAssign("sub_categorias","innerHTML",$html);     return $objResponse_sub->getXML(); } // Registra a funo carregaCategoria() para o XAjax $xajax->registerFunction("carregaSub_Categoria"); // Processa as requisicoes $xajax->processRequests();  // Coloca os JavaScripts necessrios para o XAjax  $xajax->printJavascript(); ?> <html> <head> <title></title> <!-- Funções criadas para chamar as divs --> <script>  function aguarde()  {      document.getElementById('categorias').innerHTML = '<select name="categoria" class="formulario" style="width:300px;"><option value="">Carregando categorias...</option></select>';      }  </script>  <script>  function aguardeSub()  {            document.getElementById('sub_categorias').innerHTML = '<select name="sub_categoria" class="formulario" style="width:300px;"><option value="">Carregando sub_categoria...</option></select>';      }  </script>    </head>    <body>  <form action="" method="post" name="frm" enctype="multipart/form-data">     <table>         <tr>             <td class="texto_direito">Ano:</td>             <td><select name="ano" class="formulario" style="width:300px;" onChange="javascript:aguarde();xajax_carregaCategoria(this.value);">                     <option value=""> - Escolha o Ano - </option>                     <?php                         $id_ano = $asso_mostra_editar['id_ano'];                         $sql_ano = mysql_query("SELECT * FROM prestacao_contas_ano ORDER BY nome") or die(mysql_error());                         while($asso_ano = mysql_fetch_assoc($sql_ano)){ // Inicio do while($asso_ano = mysql_fetch_assoc($sql_ano))                     ?>                     <option value="<?php echo $asso_ano['id']; ?>"<?php if($id_ano == $asso_ano['id']){ echo 'selected'; } ?> ><?php echo $asso_ano['nome']; ?></option>                     <?php } // Fim do while($asso_ano = mysql_fetch_assoc($sql_ano)) ?>                 </select>             </td>         </tr>         <tr>             <td class="texto_direito">Categoria</td>             <td><div id="categorias">                     <select name="categoria" class="formulario" id="categoria" style="width:300px;" >                         <?php                             if($asso_mostra_editar['id_categoria'] !=''){ // Inicio do if($asso_mostra_editar['id_categoria'] !='')                                 $id_cate = $asso_mostra_editar['id_categoria'];                                 $sql_mostra_id_categoria = mysql_query("select * from prestacao_contas_categoria where id = $id_cate");                                 $asso_mostra_id_categoria = mysql_fetch_assoc($sql_mostra_id_categoria);                                 ?>                         <option value="<?php echo $asso_mostra_id_categoria['id'];?>"><?php echo $asso_mostra_id_categoria['nome'];?></option>                         <?php } // Fim do if($asso_mostra_editar['id_categoria'] !='')                         else { // Inicido do else do if($asso_mostra_editar['id_categoria'] !='')?>                         <option value="">- Primeiro escolha o Ano -</option>                         <?php } // Fim do esle do if($asso_mostra_editar['id_categoria'] !='') ?>                     </select>                 </div></td>        </tr>        <tr>                <td class="texto_direito">Sub_Categoria</td>             <td><div id="sub_categorias"><select name="sub_categoria" class="formulario" id="sub_categoria" style="width:300px;">               <?php                             if($asso_mostra_editar['id_categoria'] !=''){ // Inicio do if($asso_mostra_editar['id_categoria'] !='')                                 $id_cate = $asso_mostra_editar['id_categoria'];                                 $sql_mostra_id_categoria = mysql_query("select * from prestacao_contas_categoria where id = $id_cate");                                 $asso_mostra_id_categoria = mysql_fetch_assoc($sql_mostra_id_categoria);                                 ?>               <option value="<?php echo $asso_mostra_id_categoria['id'];?>"><?php echo $asso_mostra_id_categoria['nome'];?></option>               <?php } // Fim do if($asso_mostra_editar['id_categoria'] !='')                         else { // Inicido do else do if($asso_mostra_editar['id_categoria'] !='')?>               <option value="">- Primeiro escolha Uma Categoria -</option>               <?php } // Fim do esle do if($asso_mostra_editar['id_categoria'] !='') ?>             </select></div></td>        </tr>       </table>      </form>     </body>    </html>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17681
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Criação de Selects multiplos

30-03-2009 19:01

Para completar tá faltando o xajax.inc.php e se possível, faz um export do bd usado no script para servir de exemplo.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 96
Nome: Júnior
Descrição do site: Voltado para o Desenvolvimentos de Sistemas
Localização: Goiania
Contato:

Criação de Selects multiplos

31-03-2009 07:50

esta bem vou esta dando uma melhorada no codigo depois eu posto o xajax e o banco
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17681
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Criação de Selects multiplos

31-03-2009 09:03

blz
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado