Jump to content

Recommended Posts

Olá para todos, sou iniciante em php estou estudando atualmente como cadastrar editar e deletar os dados em um formulário via PDO.

porem estou com um problema aqui, no meu exercício de exemplo, tenho 3 campos LOGIN, como um input, SENHA como um input e NIVEL como um select segue o código.

 

<input type="text" name="nome" value="<? echo $cliente ['nome'];?>"class="form-control"placeholder="Nome"></br>
<input type="text"name="usuario" value="<? echo $cliente ['usuario'];?>" class="form-control"placeholder="usuario"></br>
<select name="nivel"class= "form-control" >
<option input type="text"name"="nivel"value="<?php $cliente ['nivel'];?>"></option>
<option>ADMINISTRADOR</option>
<option>ADVOGADO</option>
<option>ESTAGIÁRIO</option>
<option>SECRETARIA</option>
</select>
porem quando eu clico no botão editar e chamo as informações que estão no banco de dados através do id somente esta sendo preenchido os input com as informações o select fica em branco, não sendo selecionado nada.
o que quero fazer e o seguinte: quando clicar no botão editar o select já fique com a informação referente ao nível do usuário que esta na tabela e não em branco, como iniciante em php quem puder ajudar agradeço e se possível quando informar a solução comentar as linhas do código para que eu possa assimilar e absorver a lógica. Deis de já agradeço.

 

Share this post


Link to post
Share on other sites

Olá.

 

O elemento select é diferente do elemento input. Para deixar uma opção do select selecionada, você precisa adicionar o atributo selected no option que deve ficar selecionado. No seu caso, você pode fazer assim:

 

obs: cada option do select também deve ter o atributo value

<select name="nivel" class="form-control">
    <?php
        // percorre as lista de níveis, criando um option para cada item;
        // quando o item for igual ao do cliente, então deixa ele selecionado (para
        // deixar o item selecionado, é só adicionar o atributo "selected" no option)
        
        $listaNivel = Array("ADMINISTRADOR", "ADVOGADO", "ESTAGIÁRIO", "SECRETARIA");
        foreach($listaNivel as $nivel){
            // reseta a variável/atributo
            $selecionado = "";
            
            if($nivel == $cliente["nivel"]){
                $selecionado = "selected";
            }
            
            echo "<option value='{$nivel}' $selecionado>{$nivel}</option>";
        }
    ?>
</select>

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By josemoreira
      Armazenar o select abaixo em um Edit . Ja testei varias coisas mais não deu certo. Delphi 7
       
      select sum(t.trnvlr) from transacao t inner join finalizacao f on t.trnseq=f.trnseq where t.cxanum='002' and t.trndat='01.07.2020' and t.trntip='1' and f.fzdcod='001
    • By Jack Oliveira
      Ola pessoal alguem poderia me dizer de como eu faço para criar um select igual da imagem
       
        
       
      Eu vi isso em um site estrangeiro e achei top isso para reserva de hotel
       
      Eu vi o codigo do select deles esta assim
       
      <!-- = reservation form /--> <section class="st-row" id="reservation"> <div class="container"> <div class="hr-heading rotate"> <h1>Reservation</h1><small>book your unforgettable pleasure time</small> </div> <div class="row"> <!-- ¬ form /--> <div class="col-sm-6 col-md-5 col-md-offset-1 col-lg-4 col-lg-offset-2 item-sm"> <form class="booking-form js-form-booking" action="#" method="POST" autocomplete="off"> <div class="row row-sm"> <div class="form-group col-xs-12"> <label class="label-control">Your name <span class="label-warn">*</span></label> <input class="form-control" type="text" name="name" required> </div> <div class="form-group col-xs-12"> <label class="label-control">Your e-mail <span class="label-warn">*</span></label> <input class="form-control" type="email" name="email" required> </div> <!-- datepicker/clockpicker *--> <div class="form-group col-xs-12"> <div class="row row-sm input-daterange"> <div class="col-xs-6"> <label class="label-control">date from <span class="label-warn">*</span></label> <input class="form-control datepicker" data-date-format="mm/dd/yyyy" name="date_from" required> </div> <div class="col-xs-6"> <label class="label-control">date to <span class="label-warn">*</span></label> <input class="form-control datepicker" data-date-format="mm/dd/yyyy" name="date_to" required> </div> </div> </div> <div class="form-group col-xs-12"> <div class="row row-sm"> <div class="col-xs-6"> <label class="label-control">time <span class="label-warn">*</span></label> <input class="form-control clockpicker js-input-time" type="text" name="time_from" required> </div> <div class="col-xs-6"> <label class="label-control">time <span class="label-warn">*</span></label> <input class="form-control clockpicker js-input-time" type="text" name="time_to" required> </div> </div> </div> <!-- ¬ number-of-reversed /--> <div class="form-group col-xs-12"> <label class="label-control"># people <span class="label-warn">*</span></label> <div class="select-reserved"> <div class="row row-sm"> <div class="form-group col col-xs-6"> <select class="js-select-reserved"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> </select> </div> <div class="form-group col col-xs-6"> <input class="select-reserved__check js-reserved-check" id="checkReset" type="checkbox"> <label for="checkReset"><i class="fa fa-check"></i><span class="span">I have more than 6 people in my party</span></label> </div> </div> </div> </div> <!-- end number-of-reversed /--> <div class="col-xs-12"> <div class="form-group"> <label class="label-control">Special requests</label> <textarea class="form-control" rows="10" name="message"></textarea> </div> </div> <div class="col-xs-12"> <div class="booking-form__submit col-auto"> <button class="btn btn--darker" type="submit">make reservation</button> </div> </div> </div> </form> </div> <!-- end form /--> Coloquei ele completo para que possam ver o Formulario completo
      porem preciso apenas fazer da mesma forma no SELECT
      <!-- ¬ number-of-reversed /--> <div class="form-group col-xs-12"> <label class="label-control"># people <span class="label-warn">*</span></label> <div class="select-reserved"> <div class="row row-sm"> <div class="form-group col col-xs-6"> <select class="js-select-reserved"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> </select> </div> Desde já agradeço...
    • By Paulo Oliveira Albuquerque
      Ola bom dia pessoal..
      Quero fazer do meu select option que ele se torne uma caixa de pesquisa sendo ela automatico
      quando for selecionado o nome fiz assim mais não tive o resultado que eu precisei
      Ex:
      <div class="col-md-12"> <div class="form-group"> <!--<label>Categoria:</label>--> <select class="form-control select2" required> <option>Selecione uma Cidade</option> <?php $Query = DBRead('c_cidade','*','WHERE id > 0 ORDER BY categoria ASC'); if (is_array($Query)) { foreach ($Query as $c_dados) { ?> <option value="https://meudominio.com/<?php echo $c_dados['categoria']; ?>"><?php echo $c_dados['categoria']; ?> <?php echo $c_dados['uf']; ?> <?php echo $c_dados['pais']; ?></option> <?php } } ?> </select> </div> </div> script
       
      <script type="text/javascript"> $(document).ready(function() { $(".select2").select2(); }); </script> Css
      <link href="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/css/select2.min.css" rel="stylesheet" /> <script src="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.0/js/select2.min.js"></script> Se puderem me ajudar ai ficaria grato
    • By josenilson
      olá pessoal,   
       
      tenho um select option que lista uma tabela com nomes dos  clientes,  quando uso esse select em outro form ele lista os nomes completo como:  Josenilson pereira, Vanderlei Divino etc. 
       
      Só que ao retornar isso em uma variável para verificar se esta passando o valor correto como esta na tabela,   só esta retornando o primeiro nome  Josenilson  o pode ser ? 
       
      desde já agraço,  abaixo esta o código de como estou fazendo para listar os dados vindo  da tabela em um select option. 
       
      <select> <option name"motorista"> MOTORISTA <?php $busca = 'SELECT * FROM motorista order by motorista'; $result = $db->query($busca, PDO::FETCH_ASSOC) or die("erro ao conectar"); foreach ($result as $row){ echo '<option value='.$row['motorista'].'>'.$row['motorista'].'</option>'; } ?> </option> </select>  
    • By marlone
      alguém pode me dar uma luz ? Como eu faria para editar um item da tabela? Tipo, ao clicar sobre o que eu quero editar ele abre com as informações salvas e pronto para ser alterado.
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.