Ir para conteúdo

POWERED BY:

Arquivado

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

bibliaphp

select php pegar variável

Recommended Posts

Amigos,

 

Como posso fazer um SELECT pegar uma variável?

Como faço para selecionar uma opção e a opção ficar selecionada e não voltar para a primeira opção da lista?

Eu criei uma variável que está pegando a opção do SELECT, mas o select não pega a variável; Fiz isso para tentar fazer o select fica fixo.

Estou fazendo assim, mas não funciona:

 

$lvBibliaRefresh;

 

 

<select name="lvBiblia" selected="<?php "$lvBibliaRefresh;" ?>">

<option value="TT_00">TODA A BÍBLIA</option>

<option value="AT_00">Antigo Testamento</option>

<option value="NT_00">Novo Testamento</option>

<option value="AT_Gn">Gênesis</option>

<option value="AT_Ex">Êxodo</option>

<option value="AT_Lv">Levítico</option>

<option value="AT_Nm">Números</option>

<option value="AT_Dt">Deuteronômio</option>

<option value="AT_Js">Josué</option>

<option value="AT_Jz">Juizes</option>

<option value="AT_Rt">Rute</option>

 

Obs.: Já usei o valor: value, option e agora está no exemplo o valor "selected"

 

 

$capituloRefresh; (Aqui o campo tipo TEXT que pega esta variável deu certo. Só o select que não pegou)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu conheço duas abordagens para isto.

A primeira é dentro do laço você verifica o value do select. (Propriedade selected do html)

A segunda é utilizar o JavaScript para setar após o carregamento.

Compartilhar este post


Link para o post
Compartilhar em outros sites


<?php

 

$categorias = array(

array(

'id' => 1

,'nome' => 'Roupa'

)

,array(

'id' => 2

,'nome' => 'Brinquedo'

)

,array(

'id' => 3

,'nome' => 'Programacao'

)

);

$pessoas = array(

'id' => 1

,'nome' => 'Gabriel'

,'categoria_id' => 3 //Significa q a Pessoa 1 selecionou Programação

);

 

echo '<select name="categoria_id" id="categoria_id">';

echo "<option value=''>-- Selecione a Categoria --</option>";

foreach($categorias as $categoria){

//Verifica se já está setado, se estiver adiciona o selected.

if($pessoas['categoria_id'] == $categoria['id']){

echo '<option value="' . $categoria['id'] . '" selected="selected">'. $categoria['nome'] ."</option>";

} else {

echo '<option value="' . $categoria['id'] . '">'. $categoria['nome'] ."</option>";

}

 

}

echo '</select>';

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

A propriedade selected deve ser usada nos elementos option e não no próprio elemento select.

 

Exemplo:

<?php
  $escolha = null;
  if (isset($_POST['lvBiblia']) && !empty($_POST['lvBiblia']))
  {
    $escolha = $_POST['lvBiblia'];
  }
?>
<!doctype html>
<html>
  <head>
    <title></title>
  </head>
  <body>
      <form action="" method="post" name="frmOptions" id="frmOptions">
        <select name="lvBiblia" onChange="this.frmOptions.submit();">
          <option value="TT_00" <?php echo ($escolha == 'TT_00') ? "selected='selected'" : "" ?>>TODA A BÍBLIA</option>
          <option value="AT_00" <?php echo ($escolha == 'AT_00') ? "selected='selected'" : "" ?>>Antigo Testamento</option>
          <option value="NT_00" <?php echo ($escolha == 'NT_00') ? "selected='selected'" : "" ?>>Novo Testamento</option>
      </select>
    </form>    
  </body>
</html>

Edit: Ups, o gabrieldarezzo adiantou-se a mim.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado

wootzor

Funcionou 100% este exemplo.

Se fosse prudente colocaria aqui o link do site para comprovar.

 

Att Ronaldo

 

 

Amigos,

E para o caso abaixo? Abrir a página vir vazia só com o placeholder, mas ao digitar qualquer numero de 1 à 150 não dar o refresh ap´s o SUBMIT.

 

<input name="capitulo" type="number" size="6" maxlength="3" placeholder="Capítulo" />

 

 

Outra coisa é o seguinte:

Tenho antes de cada versículo um RADIO como está abaixo, mas quando clico em qualquer um deles, mostra os comentários de todos os versículo. Quero que mostre apenas o comentários do versículo que tem o rádio clicado.

 

echo "<input type='radio' value='".$row['id']."' onchange='this.form.submit();' name='uf'<a class='pv1' href='".$arquivo."&cpage=1&formbusca=".$formbusca."&lvBiblia="."&cpvers="."'>"."<strong><font color=".$cor21.">"."</font></strong>";

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ta confuso oq você quer / Onde você está.

 

Tenta trazer um exemplo só em HTML.

As vezes até você reformulando a pergunta você mesmo acaba sanando ela.

 

 

Amém.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A propriedade selected deve ser usada nos elementos option e não no próprio elemento select.

 

Exemplo:

<?php
  $escolha = null;
  if (isset($_POST['lvBiblia']) && !empty($_POST['lvBiblia']))
  {
    $escolha = $_POST['lvBiblia'];
  }
?>
<!doctype html>
<html>
  <head>
    <title></title>
  </head>
  <body>
      <form action="" method="post" name="frmOptions" id="frmOptions">
        <select name="lvBiblia" onChange="this.frmOptions.submit();">
          <option value="TT_00" <?php echo ($escolha == 'TT_00') ? "selected='selected'" : "" ?>>TODA A BÍBLIA</option>
          <option value="AT_00" <?php echo ($escolha == 'AT_00') ? "selected='selected'" : "" ?>>Antigo Testamento</option>
          <option value="NT_00" <?php echo ($escolha == 'NT_00') ? "selected='selected'" : "" ?>>Novo Testamento</option>
      </select>
    </form>    
  </body>
</html>

Edit: Ups, o gabrieldarezzo adiantou-se a mim.

... e se em vez de SELEC fosse um INPUT ? Como seria o exemplo acima?

<input name="capitulo" type="number" value="capitulo">

Compartilhar este post


Link para o post
Compartilhar em outros sites

... e se em vez de SELEC fosse um INPUT ? Como seria o exemplo acima?

<input name="capitulo" type="number" value="capitulo">

 

Amigo,

Abaixo segue um problema, os demais acima foram resolvidos:

 

Tenho uma tabela que tem os campos ID, VERSÍCULOS, COMENTÁRIOS

Antes de cada versículo tem um RADIO com nome UF, e quando clica neste radio mostra abaixo dos versículos os comentários de cada versículo

Quando abro o site mostra os versículos perfeitamente mas quando clico no radio mostra todos os comentários.

Como faço para exibir somente o comentário do versículo que teve o radio clicado? E não todos os comentários.

 

 

<?
echo "<input type='radio' value='".$row['id']."' onchange='this.form.submit();' name='uf'<a class='pv1' href='".$arquivo."&cpage=1&formbusca=".$formbusca."&lvBiblia="."&cpvers="."'>"."<strong><font color=".$cor21.">"."</font></strong>";
$estelv=$row["livro"];
$uf = $_POST["uf"];
if ($uf ==true) {
echo "<font color=".$cor26.">Comentário: </font>";
echo "<font color=".$cor2.">".$row["comentario"]."</font>";
?>
<br>
<?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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