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

Popular select com dados vindos de duas tabelas


Chirlison

Pergunta

Boa tarde a todos!

Pessoal, estou com o seguinte problema para popular um select com dados vindos do banco.

Tenho o seguinte código abaixo para popular o select.

include "../config/config.php";

//Aqui eu busco a categoria que está gravada na tabela (piloto_campeonato).
$busca2=mysql_query("SELECT * FROM piloto_campeonato WHERE id_campeonato='$id_campeonato' AND cpf='111.111.111-11'");
while($dados2 = mysql_fetch_array($busca2))
{
$opcao_escolhida = $dados2['categoria'];
echo $opcao_escolhida; 
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//Aqui eu busco todas as categorias que estão gravadas na tabela (campeonatos).
$busca=mysql_query("SELECT * FROM campeonatos WHERE id='$id_campeonato'");

if(!mysql_num_rows($busca)){ 
echo 'Nenhum dado cadastrado na base de dados';
}else{
        echo "<select name=\"categoria\" id=\"categoria\">";
        while($ver=mysql_fetch_row($busca)){
                        $id=$ver[0];
                                        $categorias=$ver[10];
                                        
                                        }}
                                        
                                        $categorias=unserialize($categorias);   
                        foreach($categorias as $valor)
                                        {
                                        $selected = $opcao_escolhida == $categorias['$valor'] ? ' selected="selected"' : '';
                                        echo '<option value="'.$categorias['$valor'].'"'.$selected.'>'.$categorias['$valor'].'</option>';
                                        
                                        }       
                                                                                                                        
        echo "</select>";

O que preciso fazer e não estou conseguindo?

Trazer a categoria escolhida pelo usuário e que foi gravada no banco como a primeira opção do select.

Ex: Se o usuário ao se cadastrar no site, na opção Categoria, ele escolheu a Categoria1, quando faço a seleção dos dados desse usuário, a opção Categoria que ele escolheu, neste caso Categoria1, não vem como a primeira opção e sim vem abaixo das demais cadastradas no banco.

Alguém tem alguma sugestão de como posso fazer isto?

Desde já, muito obrigado a todos.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

É só mudar a query

$busca=mysql_query("SELECT * FROM campeonatos WHERE id='$id_campeonato'");
para
$busca=mysql_query("SELECT * FROM campeonatos WHERE id=$id_campeonato ORDER BY FIELD(id,$id_campeonato) DESC, id DESC;");

PS: evite usar aspas quando a comparação for de inteiros, e sempre no fim se possivel coloque um ; evitando assim que o banco de dados fique esperando mais instruções, qualquer coisa estamos ai! abços!

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