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

Ajax + Php


Carlos Rocha

Pergunta

Ola pessoal.

Estou com um problema que de certa forma ainda esta dentro do probnlema do meu post anterior.

É o seguinte:

Tenho 02 combobox

uma que mostra os seguimentos e a outra que mostra os subseguimentos(cada seguimento tem os seus cadastrados no mysql).

Bom, na que mostra os seguimentos, fiz um while(list) para listar os seguimentos e coloquei no select um onchange para um script ajax:

<script language="JavaScript" src="buscasubseguimento.js"></script>
<select name="seguimento" id="seguimento" size="1" onchange="BuscaSeguimento(this.options[this.selectedIndex].value)" style="width:200px">
    <option value="#" selected>Selecione o Seguimento:
    <?
    $busca_seguimento = mysql_query("select id, titulo from seguimentos");
    $num_linhas_seguimento = mysql_num_rows($busca_seguimento);
   if ($num_linhas_seguimento == 0) {echo "Ainda não há Seguimentos cadastrados";}
       else {
           while(list($id_seguimento, $titulo_seguimento) = mysql_fetch_row($busca_seguimento)){
            ?><option value="<?=$id_seguimento;?>"> <?=$titulo_seguimento;?> <?                                                                                                                 
                                                                                               }
                                                                            ?>                   
     </select>
    <?     }
   ?>    
[/coded]
No combo dos subseguimentoas fiz assim:
[code]
<select name="subseguimento" id="subseguimento" size="1" style="width:200px">
    <option value="#" selected>Selecione o primeiro o Seguimento:
</select>
Bom, isso tudo funciona corretamente porem, na hora de listar os subseguimentos, saiu tanto no value quanto na a mostra do option o nome do subseguimento e eu preciso que saia no value a id do subseguimento e na visualização ai sim o nome do subnseguimento. segue os outros arquivos para listar os seguimentos do banco e o código Ajax BuscaSeguimento.js
try{
    xmlhttp = new XMLHttpRequest();
}catch(ee){
    try{
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    }catch(e){
        try{
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }catch(E){
            xmlhttp = false;
        }
    }
}

function BuscaSeguimento(tuf){

    //limpa o select
    var c=document.getElementById("subseguimento")
    while(c.options.length>0)c.options[0]=null
    c.options[0]=new Option(" -- Aguarde ... -- "," -- Aguarde ... -- ")

    //Monta a url com a uf
    xmlhttp.open("GET", "buscasubseguimento.php?seg="+tuf,true);

    xmlhttp.onreadystatechange=function() {
        if (xmlhttp.readyState==4){
            //limpa o select
            var c=document.getElementById("subseguimento")
            while(c.options.length>0)c.options[0]=null
            //Transforma a lista de subseguimentos JSON em Javascript
            var asubseguimentos=eval((xmlhttp.responseText))
            //popula o select com a lista de subseguimentos obtida
            for(var i=0;i<asubseguimentos.length;i++){
                asubseguimentos[i]=unescape(asubseguimentos[i])
                c.options[c.options.length]=new Option(asubseguimentos[i],asubseguimentos[i])
            }
        }
    }

    xmlhttp.send(null)
}
BuscaSeguimento.php
<?php include("../../global/conecta.php"); ?>

<?
$busca_seguimento = mysql_query("select id, id_seguimento, titulo from sub_seguimentos where id_seguimento = '$seg'");
$size = mysql_num_rows($busca_seguimento);
 echo '[';
 $started = false;
 while( list($id, $seguimento, $titulo) = mysql_fetch_row($busca_seguimento) ){

    if( $started ) { echo ','; }else{ $started = true; }
    echo ("'");
    echo $titulo;
    echo ("'");

}
echo ']';
?>

Na tabela onde vou guardar os seguimentos e os subseguimentos, os campos são int (inteiros)

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...