Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ele exibe os dados na tela certinho, mais quando digito para buscar ele mostra o resultado da pesquisa e quantos dados foram achados, mais as informação não aparece na tela, apenas uma tabela fixa com todos os usuários cadastrados, preciso de ajuda muito obrigado!
<?php
include_once("conexao.php");
$filtro = isset($_GET['filtro'])?$_GET['filtro']:"";
$sql = "select * from usuarios where CPF like '%$filtro%' order by nome";
$consulta = mysqli_query($conexao,$sql);
$registros = mysqli_num_rows($consulta);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Alterar Cadastros123</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<?php
$parametro = filter_input(INPUT_GET, "parametro");
$mysqllink = mysqli_connect("localhost" , "root", "");
mysqli_select_db($mysqllink, "cadastro");
if ($parametro){
$dados = mysqli_query("select * from usuarios where nome like '$parametro%' order by CPF");
}else
{
$dados = mysqli_query($mysqllink, "select * from usuarios order by CPF");
}
$linha = mysqli_fetch_assoc($dados);
$total = mysqli_num_rows($dados);
?>
</head>
<body>
<center>
<p>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>">
</p>
<h1>Consultas</h1>
<hr><br><br>
<form method="get" action="">
Busca por CPF:: <input type="text" name="filtro" class="campo" required= autofocus>
<input type="submit" value="Pesquisar" class="btn">
</form>
<?php
$filtro = isset($_GET['filtro'])?$_GET['filtro']:"";
$sql = "select * from usuarios where CPF like '%$filtro%' order by CPF";
$consulta = mysqli_query($conexao,$sql);
$registros = mysqli_num_rows($consulta);
print "Resultado da pesquisa com o número <strong>$filtro</strong>.<br><br>";
print "$registros Registros encontrado(s).";
print "<br><br>";
while($registros = mysqli_fetch_array($consulta)){
$codigo = $registros[0];
$CPF = $registros[8];
$nome = $registros[0];
$sobrenome = $registros[1];
$pais = $registros[2];
$estado = $registros[3];
$cidade = $registros[4];
$email = $registros[5];
$senha = $registros[6];
}
?>
<table class="table">
<thead>
<tr>
<th>id</th>
<th>CPF</th>
<th>nome</th>
<th>sobrenome</th>
<th>pais</th>
<th>estado</th>
<th>cidade</th>
<th>email</th>
<th>senha</th>
<th></th>
</tr>
</thead>
</tbody>
<?php
if ($total) { do {
?>
<tr>
<td><?php echo $linha['id'] ?></td>
<td><?php echo $linha['CPF'] ?></td>
<td><?php echo $linha['nome'] ?></td>
<td><?php echo $linha['sobrenome'] ?></td>
<td><?php echo $linha['pais'] ?></td>
<td><?php echo $linha['estado'] ?></td>
<td><?php echo $linha['cidade'] ?></td>
<td><?php echo $linha['email'] ?></td>
<td><?php echo $linha['senha'] ?></td>
<td><a href="<?php echo "paginaalterar.php?id=" . $linha['id'] . "&CPF" . $linha['CPF'] . "&nome" . $linha['nome'] . "&sobrenome" . $linha['sobrenome'] . "&pais" . $linha['pais'] . "&estado" . $linha['estado'] . "&cidade" . $linha['cidade'] . "&email" . $linha['email'] . "&senha" . $linha['senha']?>">Alterar</td>
</tr>
<?php
} while ($linha = mysqli_fetch_assoc($dados));
mysqli_free_result($dados);}
mysqli_close($mysqllink);
?>
</td>
</tbody>
</table>
</div>
</center>
</tbody>
<center>
<a href="cadastrousuario.php" button type="button" class="btn btn-success">Cadastrar</button></a>
<a href="alteradadocliente.php" button type="button" class="btn btn-danger">Excluir Cliente</button></a>
<a href="consultas.php" button type="button" class="btn btn-primary">Consulta</button></a>
</center>
</html>>
5 horas atrás, Fernando C disse:
tente assim:
http://trocadicas.blogspot.com.br/2015/04/pagina-de-busca-simples-com-pdo-e-mysql.html
Não deu certo agora ferro!!!
O que exatamente não deu certo?
No seu post original, você está misturando duas consultas.
Seu problema está aqui:
while ($linha = mysqli_fetch_assoc($dados));
Você possui a consulta completa, que está na váriavel $dados, e a consulta filtrada, que está na variável $consulta. Você está iterando apenas sobre dados na hora de criar a tabela.Opá para esclarecer melhor minha situação estou encaminhando um print:
Há e vou arrumar vou tirar a variavel dados e deixar só $consulta certo?
Obrigado.
---Na tabela abaixo é possivel visualizar que o registro no banco de $dados é achado mais ele não aprece na tela por 1° Lugar, é isto que estou tentando fazer funcionar...

Opá subiu um registro, mais agora só ta subindo o primeiro registro da tabela, troquei a variavel $dados por $consulta e ja ta dando resultado, vai dar certo!!!
O primeiro registro da tabela ta cravado em primeiro lugar tento consultar outros registros mais não funciona.

Eu tenho um sistema que cria uma tabela com while em Mysql, você pode fazer da seguinte forma em seu sistema de busca:
<table class="table table-striped table-advance table-hover">
<thead>
<tr>
<th><i class="fas fa-camera"></i> Nome</th>
<th><i class="fa fa-bullhorn"></i> Sobrenome</th>
<th><i class="fa fa-envelope"></i> Idade</th>
<th><i class="fa fa-key"></i> Sexo</th>
</tr>
</thead>
<tbody>
<?php
if (isset($_POST['busca'])){
$busca = $_POST['busca'];
$sql = "SELECT * FROM clientes WHERE (nome LIKE "'.$busca.'" || sobrenome LIKE "'.$busca.'" || idade LIKE "'.$busca.'" || sexo LIKE "'.$busca.'")";
} else {
$sql = "SELECT * FROM clientes";
}
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
?>
<tr>
<td>
<span class="label label-info label-mini"><?php echo $row['nome']; ?></span>
</td>
<td>
<span class="label label-info label-mini"><?php echo $row['sobrenome']; ?></span>
</td>
<td>
<span class="label label-warning label-mini"><?php echo $row['idade']." anos"; ?></span>
</td>
<td>
<span class="label label-warning label-mini"><?php echo $row['sexo']; ?></span>
</td>
</tr>
<?php }} ?>
</tbody>
</table>
:)Obrigado irmão, conte comigo!
Deu certo? Atendeu sua necessidade?
To mexendo nele ainda asuhduash...
Beleza, qualquer dúvida só dizer.
Não deu certo deu erro encapsulamento de string vou tentar até conseguir, o que eu vejo é que o campo buscar não tem poder sobre a tabela eles não estão trabalhando juntos.

Consegui! Tive que usar "jquery", função que trabalha exatamente nos dados que são apresentados na tela:
<?php
include_once("conexao.php");
$filtro = isset($_GET['filtro'])?$_GET['filtro']:"";
$sql = "select * from usuarios where CPF like '%$filtro%' order by nome";
$consulta = mysqli_query($conexao,$sql);
$registros = mysqli_num_rows($consulta);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Alterar Cadastros123</title>
<style type="text/css">
body{ font-family:"Trebuchet MS", Arial, Helvetica, sans-serif }
/* " Para o input */
.input-search{
border:1px solid #CCC;
padding:5px 14px;
font-size:12px;
margin:10px 0;
-webkit-border-radius:15px;
-moz-border-radius:15px;
-ms-border-radius:15px;
-o-border-radius:15px;
border-radius:15px;
}
.input-search::-webkit-input-placeholder{ font-style:italic }
.input-search:-moz-placeholder { font-style:italic }
.input-search:-ms-input-placeholder { font-style:italic }
/* " Para a tabela */
table.lista-clientes{
border-collapse:collapse;
font-size:11px;
font-family:Tahoma, Geneva, sans-serif;
}
table.lista-clientes th{
padding:5px;
background:#EEE;
border:1px solid #CCC;
}
table.lista-clientes td{
padding:3px;
border:1px solid #CCC;
}
</style>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.quick.search.js"></script>
<?php
$parametro = filter_input(INPUT_GET, "parametro");
$mysqllink = mysqli_connect("localhost" , "root", "");
mysqli_select_db($mysqllink, "cadastro");
if ($parametro){
$dados = mysqli_query("select * from usuarios where nome like '$parametro%' order by CPF");
}else
{
$dados = mysqli_query($mysqllink, "select * from usuarios order by CPF");
}
$linha = mysqli_fetch_assoc($dados);
$total = mysqli_num_rows($dados);
?>
</head>
<body>
<center>
<p>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>">
</p>
<h1>Consultas</h1>
<hr><br><br>
Entre com o numero do CPF:
<input type="text" class="input-search" alt="lista-clientes" placeholder="Buscar nesta lista"/><br><br>
<?php
$filtro = isset($_GET['filtro'])?$_GET['filtro']:"";
$sql = "select * from usuarios where CPF like '%$filtro%' order by CPF";
$consulta = mysqli_query($conexao,$sql);
$registros = mysqli_num_rows($consulta);
print "*** Sempre confirme os dados antes de alterar ***<br> <strong>$filtro</strong>.<br><br>";
print "$registros Registros encontrado(s).";
print "<br><br>";
while($registros = mysqli_fetch_array($consulta)){
$codigo = $registros[0];
$CPF = $registros[8];
$nome = $registros[0];
$sobrenome = $registros[1];
$pais = $registros[2];
$estado = $registros[3];
$cidade = $registros[4];
$email = $registros[5];
$senha = $registros[6];
}
?>
<table class="lista-clientes table-striped table-advance table-hover">
<thead>
<tr>
<th scope="col">Id</th>
<th scope="col">CPF</th>
<th scope="col">Nome</th>
<th scope="col">Sobrenome</th>
<th scope="col">pais</th>
<th scope="col">Estado</th>
<th scope="col">Cidade</th>
<th scope="col">Email</th>
<th scope="col">Senha</th>
</tr>
</thead>
<?php
if ($total) { do {
?>
<tr>
<td><?php echo $linha['id'] ?></td>
<td><?php echo $linha['CPF'] ?></td>
<td><?php echo $linha['nome'] ?></td>
<td><?php echo $linha['sobrenome'] ?></td>
<td><?php echo $linha['pais'] ?></td>
<td><?php echo $linha['estado'] ?></td>
<td><?php echo $linha['cidade'] ?></td>
<td><?php echo $linha['email'] ?></td>
<td><?php echo $linha['senha'] ?></td>
<td><a href="<?php echo "paginaalterar.php?id=" . $linha['id'] . "&CPF" . $linha['CPF'] . "&nome" . $linha['nome'] . "&sobrenome" . $linha['sobrenome'] . "&pais" . $linha['pais'] . "&estado" . $linha['estado'] . "&cidade" . $linha['cidade'] . "&email" . $linha['email'] . "&senha" . $linha['senha']?>">Alterar</td>
</tr>
<?php
} while ($linha = mysqli_fetch_assoc($dados));
mysqli_free_result($dados);}
mysqli_close($mysqllink);
?>
</td>
</tbody>
</table>
</div>
</center>
</tbody> <br><br>
<center>
<a href="cadastrousuario.php" button type="button" class="btn btn-success">Cadastrar</button></a>
<a href="alteradadocliente.php" button type="button" class="btn btn-danger">Excluir Cliente</button></a>
<a href="consultas.php" button type="button" class="btn btn-primary">Consulta</button></a>
</center>
</html>
Tive que adicionar a seguinte função Jquery, e chama-la na pagina de alteracliente:
$(function(){
$(".input-search").keyup(function(){
//pega o css da tabela
var tabela = $(this).attr('alt');
if( $(this).val() != ""){
$("."+tabela+" tbody>tr").hide();
$("."+tabela+" td:contains-ci('" + $(this).val() + "')").parent("tr").show();
} else{
$("."+tabela+" tbody>tr").show();
}
});
});
$.extend($.expr[":"], {
"contains-ci": function(elem, i, match, array) {
return (elem.textContent || elem.innerText || $(elem).text() || "").toLowerCase().indexOf((match[3] || "").toLowerCase()) >= 0;
}
});
Encontrei a função no site: http://www.adrianomeira.com/blog/pesquisando-dados-dentro-de-uma-tabela-usando-jquery-quick-search-table-jquery
/monthly_2018_04/image.png.6344b886b63ca6ed0c77c63b290de704.png" />
Caramba! Que bom que conseguiu, haha
O JS realmente muda nossas vidas, rsrs.
>
Em 04/04/2018 at 14:20, Jhess disse:
Caramba! Que bom que conseguiu, haha
O JS realmente muda nossas vidas, rsrs.
È verdade, parece que não estou jogando certo mais programação é programação sempre vai ter um coringa pra salvar o programa aushuashuash, um forte abraço!
tente assim:
http://trocadicas.blogspot.com.br/2015/04/pagina-de-busca-simples-com-pdo-e-mysql.html