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

Query com case


vitaostm

Pergunta

Olá pessoal, sou novo em programação e estou fazendo uma aplicação onde possuo a seguinte estrutura:

|    função   | Registro | Nome Completo |

| Operador   |     156     |     Fulano de Tal  |

A coluna função em meu formulário é digitada manualmente (titulo), a coluna registro é um droplist com todas as numerações vindas de uma tabela mysql, e o nome também vem da mesma tabela em uma textbox.

1. A droplist está funcionando, no entanto gostaria de usar um "case" ou de repetente outra função para ele listar somente os registros cuja coluna "função" da mesma tabela mostre "operador", como o exemplo que citei acima.

2. Ao selecionar o registro que ele desse um "load update" e carregasse o respectivo nome.

Bom sei que é possível com AJAX, mas vamos por parte e resolvamos a questão 1.

O que tenho é o seguinte:

<?php
 header('Content-type: text/html; charset=utf-8');
$pdo = new PDO('mysql:host=localhost;dbname=banco', 'usuario', 'senha');
$sql = "SELECT registro FROM cadastro order by registro ASC";
$stmt = $pdo->prepare($sql);
$stmt->execute();
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
if ($stmt->rowCount() > 0) { ?>
  <select name="CMG">
    <?php
    header('Content-type: text/html; charset=utf-8');
    foreach ($results as $row) { ?>
      <option value="<?php
      header('Content-type: text/html; charset=utf-8');
      echo $row['registro']; ?>"><?php echo $row['registro']; ?></option>
    <?php } ?>
  </select>
<?php } ?>

Desde já agradeço.

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Boa noite

o que eu entendi do seu codigo, é que você posssui uma <select name="CMG"> que tem a lista de codigos. Quando você selecionar o codigo, você quer que o nome apareça em algum lugar? é isso?

Se for isso, porque não colcocar algo assim:

 

 

<?php
 header('Content-type: text/html; charset=utf-8');
$pdo = new PDO('mysql:host=localhost;dbname=banco', 'usuario', 'senha');
$sql = "SELECT registro,nome FROM cadastro order by registro ASC";
$stmt = $pdo->prepare($sql);
$stmt->execute();
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
if ($stmt->rowCount() > 0) { ?>
  <select name="CMG" id="caixa_de_selecao">
    <?php
    header('Content-type: text/html; charset=utf-8');
    foreach ($results as $row) { ?>
      <option value="<?  echo $row['nome']; ?>"><?php echo $row['registro']; ?></option>
    <?php } ?>
  </select>
<?php } ?>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>

<script>

$(document).ready(function() {

    $('#caixa_de_selecao').change(function() {       // Executa ao mudar a seleção do 'select'
        var a=$('#caixa_de_selecao option:selected').val();     // pega o valor da seleção
        alert(a);                           // mostra o valor em um Alert
    });

});


 

</script>

Ao invés de um ALERT, você poderia substituir o conteudo de uma DIV para mostrar o resultado

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,3k
    • Posts
      652,3k
×
×
  • Criar Novo...