Ir para conteúdo
Fórum Script Brasil

Rafael Taboada

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre Rafael Taboada

Rafael Taboada's Achievements

0

Reputação

  1. Bom Dia ! Estou com uma dificuldade com um código que estou montando em php para buscar uma lista suspensa a partir de outra lista suspensa. Usando Ajax e xml. Exemplo: Tenho no banco de dados 2 grupos de despesas, 2 despesas e 1 funcionário. Quero que ao selecionar 1 grupo de despesas na lista suspensa eu veja apenas as despesas vinculadas aquele grupo em outra lista suspensa. Assim como quero ver os funcionários cadastrados em uma terceira lista suspensa caso o grupo de despesas esteja vinculado a funcionários também. Bom o que está ocorrendo é que ao selecionar um grupo de despesas a lista suspensa das despesas fica sempre em branco, porém a lista suspensas de funcionários está funcionando corretamente, aparecendo os funcionários sempre que seleciono o grupo de despesas vinculado a funcionários. Coloquei um comentário no código que quando escrevo o código do grupo direto na programação tudo funciona. Como se me indicasse que o problema está na variável que busca o código do grupo, mas não consigo acertar. Abaixo o Código do Ajax: <html> <script type="text/javascript"> var linhas = "<?php echo $conv_desp_rec?>"; var linhasv = "<?php echo $linhasv?>"; var id_empresa = "<?php echo $id_empresa?>"; for(i=0 ; i < linhas ; i++){ function buscar_desp_func(i){ var nm_grdespesa = $('#grdesp'+i).val(); var nm_grdespesa_vinculo = <?php if($linhasv > 1){ for($v=1 ; $v < $linhasv ; $v++){ echo"['$grdespesa_vinculo[0]','$grdespesa_vinculo[$v]'];"; } }elseif($linhasv == 1){ for($v=0 ; $v < $linhasv ; $v++){ echo"['$grdespesa_vinculo[0]'];"; } }elseif($linhasv == 0){ echo"['000000'];"; } ?> if(nm_grdespesa){ var url_1 = 'xml/despesas_ajax.php?nm_grdespesa='+nm_grdespesa+'&linha='+i+'&id_empresa='+id_empresa; //não está funcionando essa busca, assim funcionou->'xml/despesas_ajax.php?nm_grdespesa=29&linha='+i+'&id_empresa='+id_empresa; $.get(url_1, function(dataReturn) { $('#load_desp'+i).html(dataReturn); }); } for(v=0 ; v < linhasv ; v++){ if(nm_grdespesa == nm_grdespesa_vinculo[v]){ var url = 'xml/funcionarios_ajax.php?linha='+i+'&id_empresa='+id_empresa; $.get(url, function(dataReturn) { $('#load_func'+i).html(dataReturn); }); }else{ var url = 'xml/funcionarios_ajax_vazio.php?linha='+i; $.get(url, function(dataReturn) { $('#load_func'+i).html(dataReturn); }); } } } } </script> </html> E abaixo o código das listas suspensas: <html> <?php include('conexao.php'); $sql9 = "select * from tb_grdespesa where id_empresa='$id_empresa'"; //$sql10 = "select nm_despesa from tb_despesa where id_empresa='$id_empresa'"; $sql11 = "select ds_nome_func from tb_func where id_empresa='$id_empresa'"; $resultado_nm_grdesp = mysql_query($sql9,$conexao) or die(mysql_error($conexao)); //$resultado_nm_desp = mysql_query($sql10,$conexao) // or die(mysql_error($conexao)); $resultado_nm_func = mysql_query($sql11,$conexao) or die(mysql_error($conexao)); $linhas9 = mysql_num_rows($resultado_nm_grdesp); //$linhas10 = mysql_num_rows($resultado_nm_desp); $linhas11 = mysql_num_rows($resultado_nm_func); for( $x9=0 ; $x9 < $conv_desp_rec ; $x9++ ) { echo "<div class='campo_grdesp'> <select name='grdesp$x9' id='grdesp$x9' onBlur='buscar_desp_func($x9)' onChange='buscar_desp_func($x9)' onKeyup='buscar_desp_func($x9)' >"; for( $x10=0 ; $x10 < $linhas9 ; $x10++ ) { $ds_nome_grdesp = mysql_result($resultado_nm_grdesp,$x10,'nm_grdespesa'); $cd_grdesp = mysql_result($resultado_nm_grdesp,$x10,'cd_grdespesa'); echo "<option value='$cd_grdesp'>$ds_nome_grdesp</option>"; } echo "</select> </div>"; echo "<div id='load_desp$x9' class='campo_desp'> <select name='desp$x9' id='desp$x9'> <option><-Selecione o Grupo da Despesa</option> </select> </div>"; echo "<div id='load_func$x9' class='campo_func'> <select name='func$x9' id='func$x9'> <option><-Selecione o Grupo da Despesa</option> </select> </div>"; echo" <div class='campo_valor_desp'> <input type='text' class='input' name='valor_desp$x9' value ='0,00' onkeypress='mascara(this,semponto)' onblur='somadesp();faltasobraautomatica()' id='valor_desp$x9' /> </div> <div class='campo_obs_desp'> <label for='obs_desp$x9'>Observações:</label> <input type='text' class='input' name='obs_desp$x9' onkeypress='mascara(this,semponto)' value ='observação' id='obs_desp$x9' /> </div>"; } ?> </html>
×
×
  • Criar Novo...