Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

97proh

[Resolvido] Como colocar select setado para selecionado?

Recommended Posts

Bom pessoal é um seguinte, procurei essa duvida no forum achei algo sobre mas não consigui resolve meu problema...

 

Tenho um tabela em html que mostra todos os livros cadastrado em um banco de dados, nessa tabela tem um botão ALTERAR.

tbl.thumb.jpg.5384399707150910125c29e90f6ba182.jpg

 

Quando eu clico nesse botão alterar vai para essa outra tela.

 

alt.thumb.jpg.ce9b883cfb5adb0d2cf68aa670d55c36.jpg

 

Como vocês podem ver no proprio formulário ta puxando os valores que já existe do livro, ex: o preço 49,9 é oque tem antes da alteração, assim como os outros campos menos do combobox categorias.

 

Tipo na primeira imagem na tabela lá no campo categorias tem 1 = Ciências humanas e 2=Ciências exatas .

Quando eu tento alterar um livro que é da categoria 2 no caso ciências exatas, o combobox não deixa selecionado a categoria que ele já é antes de ser alterado.

Quero saber como deixa o combobox setado na categoria a qual o livro já é. Entederam?

 

CÓDIGO DO COMBOBOX JÁ PUXANDO AS CATEGORIAS DO BANCO

<div class="form-group">  
              <label>Categoriais</label>
              
              <select name="categorias">
                <?php
                  $sql="select * from categorias";
                  $query = mysqli_query($conexao, $sql);
                  while($linha = mysqli_fetch_assoc($query)){?>
                  
                <option value="<?php echo $linha['id']; ?>" ><?php echo $linha['nome']; ?></option>
                <?php } ?>
                
            </select>
 </div>

 

Aguardando a ajuda, obrigado espero que entedam se não entederam pode fala !

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá @97proh, seja bem vindo ao fórum!

 

Você vai pegar o valor da categoria que já está vindo na query que traz os dados, e dentro do while do combox você faz um condicional com if / else para comparar se tem essa categoria dentro do combox, se sim, ele deixa como selected.

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, Alaerte Gabriel disse:

Olá @97proh, seja bem vindo ao fórum!

 

Você vai pegar o valor da categoria que já está vindo na query que traz os dados, e dentro do while do combox você faz um condicional com if / else para comparar se tem essa categoria dentro do combox, se sim, ele deixa como selected.

Poderia demostra um exemplo, porfavor, se de usando o mesmo código que passei, agradeço se conseguir fazer isso por min, tenho até amanhã pra entrega esse projeto ! :sweat_smile:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basicamente seria o seguinte:

<option value="<?php echo $linha['id']; ?>" <?php echo($linha['id'] == $catDoProdutoEditando ? 'selected' : false); ?> ><?php echo $linha['nome']; ?></option>

Mas tente entender o código...

Se o id da categoria que está sendo listada (laço da $linha) for igual ao id que está vinculado à categoria do produto, quer dizer que são a mesma categoria (ah vá), aí é só dizer pra deixar selecionado com "selected" :tounge_wink:

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, 97proh disse:

Poderia demostra um exemplo, porfavor, se de usando o mesmo código que passei, agradeço se conseguir fazer isso por min, tenho até amanhã pra entrega esse projeto ! :sweat_smile:

 

Mais um motivo pra estudar e entender a aplicação do condicional. Vide post do Mateus.

Compartilhar este post


Link para o post
Compartilhar em outros sites
12 horas atrás, Mateus Silva disse:

Basicamente seria o seguinte:


<option value="<?php echo $linha['id']; ?>" <?php echo($linha['id'] == $catDoProdutoEditando ? 'selected' : false); ?> ><?php echo $linha['nome']; ?></option>

Mas tente entender o código...

Se o id da categoria que está sendo listada (laço da $linha) for igual ao id que está vinculado à categoria do produto, quer dizer que são a mesma categoria (ah vá), aí é só dizer pra deixar selecionado com "selected" :tounge_wink:

Muito obrigado vei me ajudou muito! conseguii haha

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por landerbadi
      Olá pessoal, boa tarde
       
      Tenho uma tabela chamada "produtos" com os seguintes campos (id, produto) e outra tabela chamada "itens" com os seguintes campos (id, prod_01, prod_02, prod_03, prod_04).
       
      Na tabela produtos eu tenho cadastrado os seguintes produtos: laranja, maçã, uva, goiaba, arroz, feijão, macarrão, etc.
       
      Na tabela itens eu tenho cadastrado os itens da seguinte maneira:
       
      1, laranja, uva, arroz, feijão;
      2, maçã, macarrão, goiaba, uva;
      3, arroz, feijão, maçã, azeite
       
      Meu problema é o seguinte: 
      Eu escolho um produto da tabela "produtos", por exemplo "uva".  Preciso fazer uma consulta na tabela "itens" para ser listado todos os registros que contenham o produto "uva" e que todos os demais produtos estejam cadastrados na tabela "produtos".
       
      No exemplo acima seria listado apenas dois registros, pois o terceiro registro não contém o produto "uva". 
       
      Alguém pode me ajudar? Pois estou quebrando a cabeça a vários dias e não consigo achar uma solução.
    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, plural, ativo. Nela tem cadastrado vários itens e seu respectivo plural. No campo ativo eu coloco a letra "S" para informar que esta palavra está ativa no sistema. Por exemplo: 1, casa, casas, S 2, mesa, mesas, S 3, cama, camas, S 4, moto, motos, S 5, rádio, rádios O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "variações" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, camas, moto 2, mesas, casas, radio 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela variações da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "casa". Preciso fazer com que o php me liste todos os registros da tabela "variações" que contenham a palavra "casa". Porém se tiver algum registro com a palavra "casas" também tem que ser listado. Neste caso ele irá encontrar dois registros. Agora eu preciso que o php verifique os demais itens e faça a listagem apenas dos item que estão ativos (que contenham um "S" no campo ativo. Neste caso ele irá encontrar apenas um registro, pois o segundo registro contém a palavra "rádio". E "rádio" não está ativo na tabela itens. Como faço isso?
    • Por First
      Olá a todos!
       
      Quando eu tento fazer o login me mostra esse erro "Could not log you in."; Alguém sabe me ajudar a resolver esse problema no meu código?
      <?php require_once("core/init.php"); if (Input::exists()) { if (Token::check(Input::get("token"))) { $validate = new Validate(); $validation = $validate->check($_POST, array( "username" => array("required" => true), "password" => array("required" => true) )); if ($validation->passed()) { $user = new User(); $remember = (Input::get("remember")) === "on" ? true : false; $login = $user->login(Input::get("username"), Input::get("password"), $remember); if ($login) { Session::flash("home", "Welcome back!"); Redirect::to("index.php"); } else { echo "Could not log you in."; } } else { foreach ($validation->errors() as $error) { echo $error."<BR>"; } } } } ?> <form action="" method="POST"> <div class="field"> <label for="username">Username</label> <input type="text" name="username" id="username"> </div> <div class="field"> <label for="password">Password</label> <input type="password" name="password" id="password"> </div> <div class="field"> <label for="remember"> <input type="checkbox" name="remember" id="remember"> Remember me </label> </div> <input type="hidden" name="token" value="<?php echo Token::generate(); ?>"> <input type="submit" value="Log in"> </form>  
       
      Desde já obrigado.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.