Jump to content
Fórum Script Brasil
  • 0

Query com case


vitaostm
 Share

Question

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 to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 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 to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      149.9k
    • Total Posts
      646.8k
×
×
  • Create New...