Ir para conteúdo

POWERED BY:

Arquivado

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

arthurcastro

Busca automática

Recommended Posts

Oi! :)
Tudo bem?
Bom, não tenho muito conhecimento em Java mas vou arranhando no que dá... rsrs
A questão agora é que estava precisando que o código que está nessa página: https://jornaltribunalivre.com.br/publicadas/, mais precisamente esse:
 

//<![CDATA[
$(window).on('load', function() {
$('#filtro-noticia').keyup(function() {
    var NoticiaFiltro = $(this).val().toLowerCase();
    console.log(NoticiaFiltro);
    $('table tbody').find('tr').each(function() {
        var conteudoCelula = $(this).find('td').text();
		console.log(conteudoCelula);
        var corresponde = conteudoCelula.toLowerCase().indexOf(NoticiaFiltro) >= 0;
        $(this).css('display', corresponde ? '' : 'none');
    });
});
});//]]> 

Que é chamado pelo campo de busca:
 

<input id="filtro-noticia"/>

Funcionasse sem precisar da busca. Por exemplo, quando o usuário acessar a página de categoria Brasil, o código exibir somente resultados que tem a palavra Brasil, sem precisar do usuário digitar Brasil no campo de busca. Tem algum jeito, com esse código aí?

Alguém pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, é possível.

Explique esse trecho: "quando o usuário acessar a página de categoria Brasil"


Como fica a URL nesse momento?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Creio que algo assim resolva seu problema:

$(window).on('load', function() {
  var href = document.location.href;
  var topic = href.split('/')[href.split('/').length -1];
  if (topic) {
    filtro(topic);
  }
  $('#filtro-noticia').keyup(function() {
    var NoticiaFiltro = $(this).val().toLowerCase();
    filtro(NoticiaFiltro);
  });
});
function filtro(NoticiaFiltro) {
  $('table tbody').find('tr').each(function() {
    var conteudoCelula = $(this).find('td').text();
    var corresponde = conteudoCelula.toLowerCase().indexOf(NoticiaFiltro) >= 0;
    $(this).css('display', corresponde ? '' : 'none');
  });
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

William, não entendi muito bem. Desculpe rsrs... Não teria que ter no código a palavra chave "brasil" pra que só seja exibido tópicos relacionados a brasil? Tem como fazer isso sem ser controlando por href?

 

Tipo assim:
Temos a página "busca.php", onde está o conteúdo de todos os tópicos disponíveis. (https://jornaltribunalivre.com.br/busca.php).

Entrando nela, você verá 3 países (3 tópicos): Alemanha, Brasil e China.

Perceba que se eu buscar por China, vai sumir Alemanha e Brasil e ficar somente China.

 

O que eu queria que acontecesse é que se eu criasse uma segunda página, por exemplo: jornaltribunalivre.com.br/china.php, esse código exibisse automaticamente os resultados que contém o tópico China (mesmo tendo no conteúdo do site os outros 2 tópicos: Alemanha e Brasil) e aí não seria necessário o campo de busca alí visto que a busca já seria automática por tópico porque foi definida no código pra ser China.

 

Na página "busca.php": exibe todo os tópicos com o campo de busca.
Nas páginas secundárias: "alemanha.php", "brasil.php", "china.php": exibe conteúdo relacionado ao respectivo tópico sem o campo de busca.

 

Pra expressar melhor:

A página "busca.php" exibe um campo pra buscar o tópico desejado dentro de uma célula <td> da tabela através do <input id="#filtro-noticia"/>

 

Queria que a página "china.php", através de uma div ou da própria tabela tivesse como exibir somente os resultados relacionados a china.
Exemplo: <div id="filtro-noticia">Aqui vai exibir somente China, excluindo Alemanha e Brasil, depois de incluir a palavra chave no script</div>

ou <table id="filtro-noticia">Aqui vai exibir somente China, excluindo Alemanha e Brasil, depois de incluir a palavra chave no script</table>

 

Desculpe incomodar tanto! rsrs
Obrigado mais uma vez!

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, foi o que eu fiz.

 

o valor da variavel topic é `brasil` para a url: 

https://www.jornaltribunalivre.com.br/topicos/brasil

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

não precisa de input.

 

você leu o código?

Compartilhar este post


Link para o post
Compartilhar em outros sites

vai precisar de um ajuste porque o seu site termina em /

 

troque:

var href = document.location.href;

por

var href = document.location.href.replace(/\/$/, '');;

o resto mantenha igual. 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por daemon
      Preciso fazer uma busca antes de inserir um registro no banco de dados.

      No caso preciso verificar se existe uma frase no banco antes de cadastrar uma nova.
       
      Exemplo:
       
      Tenho no banco a coluna ASSUNTO = "Morre David Johansen, vocalista dos New York Dolls, aos 75 anos".
       
      Quando vou cadastrar uma nova notícia "Morre, aos 75 anos, David Johansen, do New York Dolls" é parecida. Mas não quero cadastrar 2 vezes.
       
      No like não consigo fazer esta busca.... o que posso fazer para verificar esta busca antes de cadastrar ?
    • Por martemsal
      Boa tarde, 
       
      Como faço para mostrar os eventos do dia cadastrados no banco de dados para uma tabela, segue o que fiz até o momento:
      (ele já retorna todas os meus registros com o código abaixo conforme imagem anexa, mas gostaria que ele mostrasse somente o do dia)
       
      $conn = mysqli_connect($servidor, $usuario, $senha, $dbname);
        
          $pesquisar = $_POST['pesquisar'];
          $result_eventos = "SELECT * FROM salas WHERE titlecurso LIKE '%$pesquisar%' LIMIT 50";
         
          $resultado_eventos = mysqli_query($conn, $result_eventos);
         
           echo '<table align="center">';
           echo "<tr> <th colspan='5'>Data</th> </tr>";
           echo "<tr><td class='h2' colspan='5' align='center'>";
           echo date("d/m/Y");
            echo "</td></tr>";
           echo "<tr> <th>Curso</th> <th>Turma</th> <th>Professor</th><th>Sala</th><th>Hora</th></tr>";
           while($rows_eventos = mysqli_fetch_array($resultado_eventos)){   
              echo "<tr><td align='center'>"; 
          echo $rows_eventos['titlecurso'];
          echo "</td><td align='center'>"; 
          echo $rows_eventos['titleturma'];
          echo "</td><td align='center'>"; 
          echo $rows_eventos['titleprofessor'];
          echo "</td><td align='center'>"; 
          echo $rows_eventos['titlesala'];
          echo "</td><td align='center'>"; 
          echo $rows_eventos['hora_de'];
          echo "</td></tr>";

           
      echo "</table>";
      ?>
       
      alguém pode me ajudar.
      Grato

    • Por Legionario-rs
      Bom dia pessoal,
       
      Será que alguém pode me dar uma luz sobre isso? Vou postar o código mas acontece o seguinte: Mesmo com os itens configurados para não serem mostrados ele continua mostrando mas somente quando faço a pesquisa. Tem outros modos de listar todos os itens estes funcionam perfeitamente mas na pesquisa acontece isso. Se alguém poder ajudar agradeço.
       
      <%
      Dim col,colu,lista,cid_id,cid_nome,nome,lista_anunciante,msgnada
      lista=Request.querystring("lista")
      cid_id=Request.querystring("cid_id")
      cid_nome=Request.querystring("cid_nome")
      nome=Request.querystring("nome")
      %>
          <div class="site-section bg-light">
            <div class="container">
              <div class="row justify-content-center mb-5">
                <div class="col-md-7 text-center border-primary">
                  <h3><font color="green">Anunciantes Ativos</font></h3>
                </div>
              </div>
              <div class="row">
      <%
      Select Case lista
      Case "cidade"
          set lista_anunciante = lojaDB.Execute("SELECT * FROM anunciantes WHERE cid_id="& cid_id &" AND disp='S' ORDER BY nome")
          msgnada = "<h5>No momento não dispomos de nenhum comércio nesta região.</h5>"
      Case "busca"
          set lista_anunciante = lojaDB.Execute("SELECT * FROM anunciantes WHERE nome LIKE '%"& nome &"%' OR descricaop LIKE '%"& nome &"%' OR descricaog LIKE '%"& nome &"%' OR imagem LIKE '%"& nome &"%' OR imagem2 LIKE '%"& nome &"%' OR imagem3 LIKE '%"& nome &"%' OR imagem4 LIKE '%"& nome &"%' OR imagem5 LIKE '%"& nome &"%' OR imagem6 LIKE '%"& nome &"%' OR imagem7 LIKE '%"& nome &"%' OR imagem8 LIKE '%"& nome &"%' OR imagem9 LIKE '%"& nome &"%' OR imagem10 LIKE '%"& nome &"%' AND disp='S' ORDER BY nome")
          msgnada = "<h5>Nenhum comércio localizado com esse nome.</h5>"
      Case Else
          %>
          <script>window.location="./index.asp"</script>
          <%
      End Select
      If lista_anunciante.EOF Then 
          Response.Write "" & msgnada & ""
      Else 
      %>
          <%
              col=1
              if not lista_anunciante.eof then
              colu=2
              response.write ""
              while not lista_anunciante.eof
              
          Dim com_cid_id,com_id,com_nome,com_descricaop,com_imagem,com_data,com_mapalink,com_whats
          while not lista_anunciante.EOF
              com_cid_id = lista_anunciante("cid_id")
              com_id = lista_anunciante("id")
              com_nome = lista_anunciante("nome")
              com_descricaop = lista_anunciante("descricaop")
              com_imagem = lista_anunciante("imagem")
              com_data = lista_anunciante("data")
              com_mapalink = lista_anunciante("mapalink")
              com_whats = lista_anunciante("whats")
              %>
              
                <div class="col-md-6 mb-4 mb-lg-4 col-lg-4">
                  
                  <div class="listing-item">
                    <div class="listing-image">
                      <img src="images/<%=com_imagem%>" alt="<%=com_nome%>" class="img-fluid">
                    </div>
                    <div class="listing-item-content">
                      <a href="<%=com_mapalink%>" class="bookmark" data-toggle="tooltip" data-placement="left" title="Localização" target="new"><span class="icon-map"></span></a>
                      <h2><a href="http://api.whatsapp.com/send?1=pt_BR&phone=<%=com_whats%>" style="position:absolute; top:-30px;" class="bookmark" target="new"><span class="icon-whatsapp"></span></a></h2>
                      <h2 class="mb-1"><a href="detalheanunciante.asp?com_id=<%=com_id%>&url_comp=<%=Server.UrlEncode(Request.ServerVariables("QUERY_STRING"))%>"><%=left(com_nome ,23) %>...</a></h2>
                      <span class="address"><%=com_descricaop%></span>
                    </div>
                  </div>
                </div>
              <%
              if colu=col then
              response.write "<tr><td>"
              colu=1
              else
              response.write "<td>"
              colu=colu+1
              end if
              lista_anunciante.movenext
              wend
              wend
              response.write ""
              end if
              end if
      lista_anunciante.close
      set lista_anunciante=nothing
      %>
              </div>
            </div>
          </div>
    • Por Legionario-rs
      Boa tarde pessoal,
       
      Será que alguém pode me dar uma luz sobre isso? Vou postar o código mas acontece o seguinte: Mesmo com os itens configurados para não serem mostrados ele continua mostrando mas somente quando faço a pesquisa. Tem outros modos de listar todos os itens estes funcionam perfeitamente mas na pesquisa acontece isso. Se alguém poder ajudar agradeço.
       
      <%
      Dim col,colu,lista,cid_id,cid_nome,nome,lista_anunciante,msgnada
      lista=Request.querystring("lista")
      cid_id=Request.querystring("cid_id")
      cid_nome=Request.querystring("cid_nome")
      nome=Request.querystring("nome")
      %>
          <div class="site-section bg-light">
            <div class="container">
              <div class="row justify-content-center mb-5">
                <div class="col-md-7 text-center border-primary">
                  <h3><font color="green">Anunciantes Ativos</font></h3>
                </div>
              </div>
              <div class="row">
      <%
      Select Case lista
      Case "cidade"
          set lista_anunciante = lojaDB.Execute("SELECT * FROM anunciantes WHERE cid_id="& cid_id &" AND disp='S' ORDER BY nome")
          msgnada = "<h5>No momento não dispomos de nenhum comércio nesta região.</h5>"
      Case "busca"
          set lista_anunciante = lojaDB.Execute("SELECT * FROM anunciantes WHERE nome LIKE '%"& nome &"%' OR descricaop LIKE '%"& nome &"%' OR descricaog LIKE '%"& nome &"%' OR imagem LIKE '%"& nome &"%' OR imagem2 LIKE '%"& nome &"%' OR imagem3 LIKE '%"& nome &"%' OR imagem4 LIKE '%"& nome &"%' OR imagem5 LIKE '%"& nome &"%' OR imagem6 LIKE '%"& nome &"%' OR imagem7 LIKE '%"& nome &"%' OR imagem8 LIKE '%"& nome &"%' OR imagem9 LIKE '%"& nome &"%' OR imagem10 LIKE '%"& nome &"%' AND disp='S' ORDER BY nome")
          msgnada = "<h5>Nenhum comércio localizado com esse nome.</h5>"
      Case Else
          %>
          <script>window.location="./index.asp"</script>
          <%
      End Select
      If lista_anunciante.EOF Then 
          Response.Write "" & msgnada & ""
      Else 
      %>
          <%
              col=1
              if not lista_anunciante.eof then
              colu=2
              response.write ""
              while not lista_anunciante.eof
              
          Dim com_cid_id,com_id,com_nome,com_descricaop,com_imagem,com_data,com_mapalink,com_whats
          while not lista_anunciante.EOF
              com_cid_id = lista_anunciante("cid_id")
              com_id = lista_anunciante("id")
              com_nome = lista_anunciante("nome")
              com_descricaop = lista_anunciante("descricaop")
              com_imagem = lista_anunciante("imagem")
              com_data = lista_anunciante("data")
              com_mapalink = lista_anunciante("mapalink")
              com_whats = lista_anunciante("whats")
              %>
              
                <div class="col-md-6 mb-4 mb-lg-4 col-lg-4">
                  
                  <div class="listing-item">
                    <div class="listing-image">
                      <img src="images/<%=com_imagem%>" alt="<%=com_nome%>" class="img-fluid">
                    </div>
                    <div class="listing-item-content">
                      <a href="<%=com_mapalink%>" class="bookmark" data-toggle="tooltip" data-placement="left" title="Localização" target="new"><span class="icon-map"></span></a>
                      <h2><a href="http://api.whatsapp.com/send?1=pt_BR&phone=<%=com_whats%>" style="position:absolute; top:-30px;" class="bookmark" target="new"><span class="icon-whatsapp"></span></a></h2>
                      <h2 class="mb-1"><a href="detalheanunciante.asp?com_id=<%=com_id%>&url_comp=<%=Server.UrlEncode(Request.ServerVariables("QUERY_STRING"))%>"><%=left(com_nome ,23) %>...</a></h2>
                      <span class="address"><%=com_descricaop%></span>
                    </div>
                  </div>
                </div>
              <%
              if colu=col then
              response.write "<tr><td>"
              colu=1
              else
              response.write "<td>"
              colu=colu+1
              end if
              lista_anunciante.movenext
              wend
              wend
              response.write ""
              end if
              end if
      lista_anunciante.close
      set lista_anunciante=nothing
      %>
              </div>
            </div>
          </div>
       
    • Por groudon900
      segue o codigo que estou usando 
       
      <?php //Receber o número da página $pagina_atual = filter_input(INPUT_GET,'pagina', FILTER_SANITIZE_NUMBER_INT); $pagina = (!empty($pagina_atual)) ? $pagina_atual : 1; //Setar a quantidade de itens por pagina $qnt_result_pg = 20; //calcular o inicio visualização $inicio = ($qnt_result_pg * $pagina) - $qnt_result_pg; $result_usuarios = "SELECT * FROM vendas ORDER BY data DESC LIMIT $inicio, $qnt_result_pg"; $resultado_usuarios = mysqli_query($conn, $result_usuarios); while($row_usuario = mysqli_fetch_assoc($resultado_usuarios)){ ?> <tbody> <tr> <td><img src="../foto/foto_pagamentos/<?php echo $row_usuario['fotos'] ?>" class="foto2"></td> <td><?php echo $row_usuario['cliente'] ?></td> <td><?php echo $row_usuario['email'] ?></td> <td><?php echo $row_usuario['servico'] ?></td> <td><?php echo $row_usuario['data'] ?></td> <td>R$ <?php echo $row_usuario['valor'] ?></td> <td><?php echo $row_usuario['metodo'] ?></td> <td><?php echo $row_usuario['status'] ?></td> <td><?php echo $row_usuario['ultimaalteracao'] ?></td> <td><div class="dropdown no-arrow"> <a class="dropdown-toggle" href="#" role="button" id="dropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <i class="fas fa-ellipsis-v fa-sm fa-fw text-gray-600"></i> </a> <div class="dropdown-menu dropdown-menu-right shadow animated--fade-in" aria-labelledby="dropdownMenuLink"> <div class="dropdown-header">PAGAMENTOS:</div> <a class="dropdown-item" href="criarpagamentos?id=<?php echo $row_usuario['id'] ?>">Criar Pagamentos</a> <div class="dropdown-divider"></div> <a class="dropdown-item" href="proc_apagar_pagamentos.php?id=<?php echo $row_usuario['id'] ?>">Apagar Pagamentos</a> </div> </div></td> </tr> <?php } ?>  
      queria fazer um filtro de busca, Tipo pra buscar por um nome especifico ou serviço
×

Informação importante

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