Jump to content
mm_edilson

Filtro em pesquisa PHP

Recommended Posts

Bom dia amigos. Preciso criar um filtro na minha consulta ao bd. Tenho uma tabela com todas as informações dos membros da igreja. Criei uma tabela para exibir os resultados. Consigo exibir todos os resultados, mas não consigo que ele exiba apenas o que está no filtro. Se alguém puder dar uma olhada no código, e me ajudar, fico muito grato. Segue o código:

 

<?php
session_start();
include('verifica_login.php');
?>
    <form method="POST">
        Pesquisar:<input type="text" name="pesquisar" placeholder="Nome o parte do nome">
        <input type="submit" value="Pesquisar">
        
    </form><br><br>

<?php
    include("conecta.php");
        
$pesquisar = $_POST['pesquisar'];
$consulta = "SELECT * FROM CadPessoas WHERE (Nome LIKE '%$pesquisar') Or (Status = 'Ativo') OR (Status = 'Inativo') OR (Status = 'Impossibilitado') OR (Status = 'Ausente') OR (Status = 'Sob Disciplina') ORDER BY Nome";
    $con      = $conexao->query($consulta) or die($conexao->error);

<html>

  <head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta http-equiv="content-language" content="pt-br" />
  </head>
  
    <body>
        
</table>

      <table border="0" BORDER RULES="cols" cellspacing="0" CELLPADDING="6">
        <tr bgcolor="#4682B4">
          <td style="white-space: nowrap">Código</td>
          <td>Nome</td>
          <td>Sexo</td>
          <td>Endereço (Rua, Av., etc)</td>
          <td>Nº</td>
          <td>Complemento</td>
          <td>Bairro</td>
          <td>Cidade</td>
          <td>UF</td>
          <td>CEP</td>
          <td>Teleone</td>
          <td>Celular</td>
          <td>E-mail</td>
          <td>Data de Nascimento</td>
          <td>RG</td>
          <td>CPF</td>
          <td>Escolaridade</td>
          <td>Nome do Pai</td>
          <td>Nome da Mãe</td>
          <td>Estado Civil</td>
          <td>Nome do Cônjuge</td>
          <td>Dt. Nasc. Cônjuge</td>
          <td>Dt. Casamento</td>
          <td>Batizado na Igreja</td>
          <td>Dt. Prof. de Fé</td>
          <td>Dt. Batismo</td>
          <td>Batizado pelo Pastor</td>
          <td>Entrada Por</td>
          <td>Dt. Entrada</td>
          <td>Procedência</td>
          <td>Status</td>
          <td>Ministério</td>
          <td>Saída Por</td>
          <td>Dt. Saída</td>
          <td>Destino</td>
          <td>Observações</td>
          <td>Local onde Congrega</td>
          <td>Última Atualização</td>
        </tr>

 </table>
    </body>
    </html>

 

Share this post


Link to post
Share on other sites

Segue possível solução, com exemplo

de funcionamento:

 

TABELA + REGISTROS:

CREATE TABLE CadPessoas (
	Id INT NOT NULL AUTO_INCREMENT,
	Nome VARCHAR(255) NOT NULL,
	`Status` VARCHAR(30) NOT NULL,
	PRIMARY KEY(Id)
);

INSERT INTO CadPessoas ( Nome, `Status` ) VALUES
( 'João Paulo', 'Ativo' ),
( 'Patricia Souza', 'Ativo' ),
( 'Thiago Henrique', 'Inativo' ),
( 'Thiago Pereira', 'Ativo' ),
( 'Dimitri Putim', 'Impossibilitado' ),
( 'Ligia Silva', 'Ativo' ),
( 'Suzani Yuli', 'Ativo' );

 

QUERY:

SELECT * FROM `CadPessoas` WHERE (`Nome` LIKE '%$pesquisar%') AND ( `Status` = 'Ativo' OR `Status` = 'Inativo' OR `Status` = 'Impossibilitado' OR `Status` = 'Ausente' OR `Status` = 'Sob Disciplina' ) ORDER BY `Nome`

 

RESULTADO:

image.png.0a79394a2f458de311517f1f032c927d.png

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 rafaelmoreira78
      Boa tarde!
      Estou querendo fazer um select a partir da seleção de um combobox. Nesse combobox o usuário escolhe o tipo de busca que ele quer. Se é por nome, por id, por data etc. E depois, exibe os dados nos campos. Porém, não estou conseguindo e não sei como resolver isso.
      public void consultar(){ String sql ="select * from tbcertificados where ?=?"; try{ pst=conexao.prepareStatement(sql); pst.setString(1,cbConsulta.getSelectedItem().toString()); pst.setString(2,txtBusca.getText()); rs=pst.executeQuery(); if (rs.next()){ lblID.setText(rs.getString(1)); txtNome.setText(rs.getString(2)); comboCursos.setSelectedItem(rs.getString(3)); txtData.setText(rs.getString(4)); txtCH.setText(rs.getString(5)); txtEmpresa.setText(rs.getString(6)); txtObs.setText(rs.getString(7)); }  
    • By danilo759
      Tenho uma tabelinha de programas para uma rádio... está da seguinte forma.

      titulo
      data (YYYY-MM-DD)
      hora (00:00:00)

      Minha consulta, mas não retorna o programa da hora corrente. O que eu fiz de errado?
      SELECT * FROM programas WHERE data = CURDATE() AND hora = CURTIME() LIMIT 1
    • By Ro_JnR
      Estou tentando a semanas resolver um problema, consumir uma API e verificar se o campo no banco está vazio, se estiver faz insert se não faz update.
      Até aí tudo bem, agora não consigo passar do meu select para o banco, ele da erro.
       
      Segue o código:
       
      <?php

          require_once("db.class.php");
          
          $url = "https://servicodados.ibge.gov.br/api/v1/localidades/distritos";
              $ch = curl_init($url);
              curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
              curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
              $resultado = json_decode(curl_exec($ch));
              foreach ($resultado as $cidades) {
                  $nome = $cidades->nome;
                  $stmt = $conn->prepare("SELECT name FROM cidades WHERE name=?");
                  $stmt->bind_Param(':name', $nome);
                  $stmt->execute();
                  $stmt->bind_result($resultSelect);
                  $stmt->fetch();
                  if(!$stmt->execute()){
                      print_r($stmt->errorInfo());
                  }
              } 

      ?>
       
      Código do banco:
       
      $conn = new PDO("mysql:host=localhost;dbname=exercicio", "root", "");
      //"sqlsrv:Database=dbphp7;server=localhost\SQLEXPRESS;ConnectionPooling=0", "sa", "root");
      $stmt = $conn->prepare("SELECT * FROM cidades ORDER BY nome");
      $stmt->execute();
      //fetchALL basicamente faço while do mysqli
      $results = $stmt->fetchALL(PDO::FETCH_ASSOC);
       
      Print do erro:

       
      Tenho um outro exercicio que fiz bem parecido, consumi a API de estados e inseri no banco de dados, esse funcionou normalmente.
      Alguém poderia me dar uma luz, não sei mais o que fazer.
      Era para ser simples rsrsrrs.
×

Important Information

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