Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Deixar ítem selecionado ao carregar página

14-01-2015 11:50

Olá,

Tenho um select menu que puxa os resultados do meu BD conforme algumas condições.

Funciona tudo ok, segue código e um exemplo do que ele mostra

<select name='cod' class='campo' id='cod'>             <?   //Consulta com a tabela //Selecione tudo de nomedatabela em ordem crescente pelo nome  $consulta_cod = mysql_query('SELECT DISTINCT cod FROM arquivos WHERE obra_id = '.$obra_id.' order by cod ASC'); //echo"<option value='".$valores."' selected='selected'>".$valores."</option>"; echo"<option value='".$campo_tds_cod["codigos"]."'>Todos</option>"; while ($dados_cod = mysql_fetch_array($consulta_cod)) {      echo"<option value='".$dados_cod['cod']."'>".$dados_cod['cod']."</option> "; //echo"<option value='".$dados_cod['cod']."'"; //if ($dados_cod['cod'] == '555') //echo "selected = 'selected'> ".$dados_cod['cod']." </option> "; } ?>             </select>

Ex.: http://prntscr.com/5sclwc

O problema está no seguinte, eu seleciono um código qualquer, 555 por exemplo, e clico em filtrar código, daí ele carrega uma página com os resultados certos do 555, mas ele volta o valor selecionado para todos, o primeiro da lista.

Preciso que ao clicar em 555, carrega a página e deixa ele selecionado como 555.

Alguma ideia de como fazer?

Obrigado
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17385
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Deixar ítem selecionado ao carregar página

14-01-2015 15:01

Isso que você quer fazer é feito comparando o valor enviado por GET ou POST, com um valor dentro do for ou while, por exemplo

<form> <select name="cod"> <option>Todos</option> <?php for($i = 1; $i < 5; $i++) { // BLOCO DE COMPARAÇÃO if($_GET['cod']=="$i") { echo "<option selected=\"selected\">$i</option>"; } else { echo "<option>$i</option>"; } // BLOCO DE COMPARAÇÃO } ?> </select> <input type="submit" name="Filtrar" value="Filtrar"> </form>

0
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum :rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Deixar ítem selecionado ao carregar página

15-01-2015 16:43

Não tem como fazer uma comparação com o meu código existente já?

Pois quando eu clico em todos, ele filtra todos os códigos, exibindo todos os projetos cadastrados.

Acha que meu código não está ok?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17385
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Deixar ítem selecionado ao carregar página

15-01-2015 17:15

Quando trocar uma opção no seu código, você tem que passar essa opção selecionada para que o script compare.

Quando você clicar em filtrar, você deve mandar o valor que estava selecionado no select por GET ou POST. Supondo que você use o GET para enviar os dados do filtro.

if($_GET['cod']==$dados_cod['cod']) { echo "<option selected=\"selected\">$i</option>"; } else { echo "<option>".$dados_cod['cod']."</option>"; }

0
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum :rock:
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 268
Sexo: Masculino

Deixar ítem selecionado ao carregar página

15-01-2015 17:45

Deu certo! :)

Eu passo via POST, uma "$valores" pega ele, aí ficou assim:

<?   //Consulta com a tabela //Selecione tudo de nomedatabela em ordem crescente pelo nome  $consulta_cod = mysql_query('SELECT DISTINCT cod FROM arquivos WHERE obra_id = '.$obra_id.' order by cod ASC'); echo"<option value='".$campo_tds_cod["codigos"]."'>Todos</option>"; while ($dados_cod = mysql_fetch_array($consulta_cod)) {      if($valores==$dados_cod['cod']) { echo "<option selected=\"selected\">".$dados_cod['cod']."</option>"; } else { echo "<option>".$dados_cod['cod']."</option>"; } } ?>

Muito obrigado!!!!!!!!!!!!
0

Quem está online

Usuários navegando neste fórum: Bing [Bot]