Ir para conteúdo
groudon900

Filtro de Busca para tabela mysqli

Recommended Posts

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite

faz por ajax

segue o código

Config.php

<?php
$DB_HOST="localhost";
$DB_NAME= "root";
$DB_USER= "banco_de_dados";
$DB_PASS= "sua_senha";
$Tabela="sua_tabela_do_banco";


	# conectar o banco de dados
    $con=@mysqli_connect($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
    if(!$con){
        die("impossível conectar: ".mysqli_error($con));
    }
    if (@mysqli_connect_errno()) {
        die("Falha na conexão: ".mysqli_connect_errno()." : ". mysqli_connect_error());
    }

?>

Arquivo da pasta ajax

<?php
//StatusSN
function StatusSN($Status){
    if ($Status == '1') {
        echo '<span class="btn btn-success active">Pago</span>';
    } elseif ($Status == '2') {
        echo '<span class="btn btn-warning active">Pendente</span>';
    } elseif ($Status == '3') {
        echo '<span class="btn btn-danger active">Não Pago</span>';
		}
}
	
	/* Conectar ao banco de dados*/

	require_once ("../conexion.php");

	
 	
mysqli_set_charset($con,"utf8");
	
$action = (isset($_REQUEST['action'])&& $_REQUEST['action'] !=NULL)?$_REQUEST['action']:'';
if($action == 'ajax'){
	$query = mysqli_real_escape_string($con,(strip_tags($_REQUEST['query'], ENT_QUOTES)));

	$tables="".$Tabela."";
	$campos="*";
	$sWhere="".$Tabela.".cliente LIKE '%".$query."%'  
	OR ".$Tabela.".email LIKE '%".$query."%'  
	OR ".$Tabela.".data LIKE '%".$query."%' 
	OR ".$Tabela.".valor LIKE '%".$query."%'  
	OR ".$Tabela.".status LIKE '%".$query."%' 
	OR ".$Tabela.".ultimaalteracao LIKE '%".$query."%'
	OR ".$Tabela.".metodo LIKE '%".$query."%'";
	$sWhere.=" order by ".$Tabela.".cliente";
	
	
	include 'pagination.php'; // inclui arquivo de paginação
// variáveis de paginação
	$page = (isset($_REQUEST['page']) && !empty($_REQUEST['page']))?$_REQUEST['page']:1;
	$per_page = intval($_REQUEST['per_page']); // quantos registros você deseja mostrar
	$adjacents  = 50; // intervalo entre as páginas após o número de adjacentes
	$offset = ($page - 1) * $per_page;
	
// Conte o número total de linhas na sua tabela * /
	$count_query   = mysqli_query($con,"SELECT count(*) AS numrows FROM $tables where $sWhere ");
	if ($row= mysqli_fetch_array($count_query)){$numrows = $row['numrows'];}
	else {echo mysqli_error($con);}
	$total_pages = ceil($numrows/$per_page);
	
// consulta principal para buscar os dados
	$query = mysqli_query($con,"SELECT $campos FROM  $tables where $sWhere LIMIT $offset,$per_page");
	
// percorre os dados buscados
	
$finales=0;

		
	
	if ($numrows>0){
		
	?>
	<html 	
<head lang="pt-br" class="no-js">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="robots" content="noindex" />
  <meta name="viewport" content="width=device-width, initial-scale=1">

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>


<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-modal/0.9.1/jquery.modal.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery-modal/0.9.1/jquery.modal.min.css" />

</head>	
	
  
		<div class="table-responsive">
	
			<table class="table table-striped table-hover">
									        <thead>
									            <tr>
									                	
									                <th>Id</th>
                                                    <th>Imagem</th>													
                                                    <th>Clientes</th>									                
													<th>E-mail</th>
									              	<th>Serviços</th>
									              	<th>Data</th>
													<th>Valor</th>
													<th>Método</th>
													<th>Status</th>
													<th>Data Edição</th>																										
													<th width="50%">Ações</th>
									              
									            </tr>
									        </thead>
				<tbody>	
						<?php 
						while($row_usuario  = mysqli_fetch_array($query)){	
							$id              = $row_usuario['id'];
							$cliente         = $row_usuario['cliente'];
							$email           = $row_usuario['email'];
							$servico         =$row_usuario['servico'];
							$data            =$row_usuario['data'];
							$valor           =$row_usuario['valor'];
							$metodo          =$row_usuario['metodo'];
							$status          =$row_usuario['status'];
                            $ultimaalteracao =$row_usuario['ultimaalteracao'];							
                            $fotos           =$row_usuario['fotos'];							
							$finales++;

						?>	
			<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 StatusSN($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 }?>
						<tr>
							<td colspan='6'> 
								<?php 
									$inicios=$offset+1;
									$finales+=$inicios -1;
									echo "Mostrando $inicios al $finales de $numrows registros";
									echo paginate( $page, $total_pages, $adjacents);
								?>
							</td>
						</tr>


				</tbody>			
			</table>

		</div>	


<?php
}

}


?>

Para fazer a paginação

<?php
function paginate($page, $tpages, $adjacents) {
	$prevlabel = "&lsaquo; Anterior";
	$nextlabel = "Proximo &rsaquo;";
	$out = '<ul class="pagination   pull-right">';
	
	// etiqueta anterior

	if($page==1) {
		$out.= "<li class='page-item disabled'><a>$prevlabel</a></li>";
	} else if($page==2) {
		$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(1)'>$prevlabel</a></li>";
	}else {
		$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(".($page-1).")'>$prevlabel</a></li>";

	}
	
	// primeiro rótulo
	if($page>($adjacents+1)) {
		$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(1)'>1</a></li>";
	}
	// intervalo
	if($page>($adjacents+2)) {
		$out.= "<li class='page-item'><a>...</a></li>";
	}

	// Páginas

	$pmin = ($page>$adjacents) ? ($page-$adjacents) : 1;
	$pmax = ($page<($tpages-$adjacents)) ? ($page+$adjacents) : $tpages;
	for($i=$pmin; $i<=$pmax; $i++) {
		if($i==$page) {
			$out.= "<li class='active page-item'><a>$i</a></li>";
		}else if($i==1) {
			$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(1)'>$i</a></li>";
		}else {
			$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(".$i.")'>$i</a></li>";
		}
	}

	// intervalo

	if($page<($tpages-$adjacents-1)) {
		$out.= "<li class='page-item'><a>...</a></li>";
	}

	// Último

	if($page<($tpages-$adjacents)) {
		$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load($tpages)'>$tpages</a></li>";
	}

	// Próximo

	if($page<$tpages) {
		$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(".($page+1).")'>$nextlabel</a></li>";
	}else {
		$out.= "<li class='disabled page-item'><a>$nextlabel</a></li>";
	}
	
	$out.= "</ul>";
	return $out;
}
?>

 

No seu arquivo que vai receber as buscas coloca isso

			<div class='col-sm-12 pull-right'>
			<div id="custom-search-input">
                            <div class="input-group col-md-12">
                                <input type="text" class="form-control" placeholder="Faça a sua busca aqui...."  id="q" onkeyup="load(1);" />
                                <span class="input-group-btn">
                                    <button class="btn btn-success" type="button" onclick="load(1);">
                                        <span class="glyphicon glyphicon-search"></span>
                                    </button>
                                </span>
                            </div>
                </div>
			</div>
			<div class='clearfix'></div>
			<hr>
			<center><div id="loader"></div></center><!-- Carga de datos ajax aqui -->
			<div id="resultados"></div><!-- Carga de datos ajax aqui -->
			<div class='outer_div'></div><!-- Carga de datos ajax aqui -->
            
			

Css para barra de busca

  <style type="text/css">
{
color: #666;
font: 90%/180% Arial, Helvetica, Sans-serif;
width: 800px;
max-width: 96%;
margin: 0 auto;
}
a {
 
  color: #69c;
text-decoration: none;
}
a:hover {
   color: #f43319;
}
p {
   margin: 0 0 20px;
}


input {
  outline: none;
}
input[type=buscar] {
 -webkit-appearance: textfield;
 -webkit-box-sizing: content-box;
 font-family: inherit;
font-size: 100%;
}
input: :-webkit-search-decoration,
input: :-webkit-search-cancel-button {
   display: none;
}


input[type=buscar] {
  background: #1213312
url(https://static.tumblr.com/ftv85bp/MIXmud4tx/search-icon.png) no-repeat 9px center;
    border: solid 1px #000;
   padding: 15px 85px 9px   19px;
  width: 100px;


     -webkit-border-radius: 10em;
     -moz-border-radius: 10em;
     border-radius: 10em;

    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    transition: all .5s;
}

input[type=buscar]:focus {
  width: 50%;
  background-color: #fff;
  border-color: #66cc75;


       -webkit-box-shadow: 0 0 5px rbga(109,207,246,.5);
       -moz-box-shadow: 0 0 5px rbga(109,207,246,.5);
       box-shadow: 0 0 5px rbga(109,207,246,.5);
}

input:-moz-placeholder {
  color: #999;
}
 

</style>

Javascript

 <script type="text/javascript">
        
        		$(function() {
			load(1);
		});
		function load(page){
			var query=$("#q").val();
			var per_page=10;
			var parametros = {"action":"ajax","page":page,'query':query,'per_page':per_page};
			$("#loader").fadeIn('slow');
			$.ajax({
				url:'ajax/nome-do-arquivo.php',
				data: parametros,
				 beforeSend: function(objeto){
				$("#loader").html("Estamos fazendo a sua busca no banco de dados aguarde....");
			  },
				success:function(data){
					$(".outer_div").html(data).fadeIn('slow');
					$("#loader").html("");
				}
			})
		}
    </script>

É isso ai espero ter ajudado....

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, Jack Oliveira disse:

Boa noite

faz por ajax

segue o código

Config.php


<?php
$DB_HOST="localhost";
$DB_NAME= "root";
$DB_USER= "banco_de_dados";
$DB_PASS= "sua_senha";
$Tabela="sua_tabela_do_banco";


	# conectar o banco de dados
    $con=@mysqli_connect($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
    if(!$con){
        die("impossível conectar: ".mysqli_error($con));
    }
    if (@mysqli_connect_errno()) {
        die("Falha na conexão: ".mysqli_connect_errno()." : ". mysqli_connect_error());
    }

?>

Arquivo da pasta ajax


<?php
//StatusSN
function StatusSN($Status){
    if ($Status == '1') {
        echo '<span class="btn btn-success active">Pago</span>';
    } elseif ($Status == '2') {
        echo '<span class="btn btn-warning active">Pendente</span>';
    } elseif ($Status == '3') {
        echo '<span class="btn btn-danger active">Não Pago</span>';
		}
}
	
	/* Conectar ao banco de dados*/

	require_once ("../conexion.php");

	
 	
mysqli_set_charset($con,"utf8");
	
$action = (isset($_REQUEST['action'])&& $_REQUEST['action'] !=NULL)?$_REQUEST['action']:'';
if($action == 'ajax'){
	$query = mysqli_real_escape_string($con,(strip_tags($_REQUEST['query'], ENT_QUOTES)));

	$tables="".$Tabela."";
	$campos="*";
	$sWhere="".$Tabela.".cliente LIKE '%".$query."%'  
	OR ".$Tabela.".email LIKE '%".$query."%'  
	OR ".$Tabela.".data LIKE '%".$query."%' 
	OR ".$Tabela.".valor LIKE '%".$query."%'  
	OR ".$Tabela.".status LIKE '%".$query."%' 
	OR ".$Tabela.".ultimaalteracao LIKE '%".$query."%'
	OR ".$Tabela.".metodo LIKE '%".$query."%'";
	$sWhere.=" order by ".$Tabela.".cliente";
	
	
	include 'pagination.php'; // inclui arquivo de paginação
// variáveis de paginação
	$page = (isset($_REQUEST['page']) && !empty($_REQUEST['page']))?$_REQUEST['page']:1;
	$per_page = intval($_REQUEST['per_page']); // quantos registros você deseja mostrar
	$adjacents  = 50; // intervalo entre as páginas após o número de adjacentes
	$offset = ($page - 1) * $per_page;
	
// Conte o número total de linhas na sua tabela * /
	$count_query   = mysqli_query($con,"SELECT count(*) AS numrows FROM $tables where $sWhere ");
	if ($row= mysqli_fetch_array($count_query)){$numrows = $row['numrows'];}
	else {echo mysqli_error($con);}
	$total_pages = ceil($numrows/$per_page);
	
// consulta principal para buscar os dados
	$query = mysqli_query($con,"SELECT $campos FROM  $tables where $sWhere LIMIT $offset,$per_page");
	
// percorre os dados buscados
	
$finales=0;

		
	
	if ($numrows>0){
		
	?>
	<html 	
<head lang="pt-br" class="no-js">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="robots" content="noindex" />
  <meta name="viewport" content="width=device-width, initial-scale=1">

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script>


<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-modal/0.9.1/jquery.modal.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery-modal/0.9.1/jquery.modal.min.css" />

</head>	
	
  
		<div class="table-responsive">
	
			<table class="table table-striped table-hover">
									        <thead>
									            <tr>
									                	
									                <th>Id</th>
                                                    <th>Imagem</th>													
                                                    <th>Clientes</th>									                
													<th>E-mail</th>
									              	<th>Serviços</th>
									              	<th>Data</th>
													<th>Valor</th>
													<th>Método</th>
													<th>Status</th>
													<th>Data Edição</th>																										
													<th width="50%">Ações</th>
									              
									            </tr>
									        </thead>
				<tbody>	
						<?php 
						while($row_usuario  = mysqli_fetch_array($query)){	
							$id              = $row_usuario['id'];
							$cliente         = $row_usuario['cliente'];
							$email           = $row_usuario['email'];
							$servico         =$row_usuario['servico'];
							$data            =$row_usuario['data'];
							$valor           =$row_usuario['valor'];
							$metodo          =$row_usuario['metodo'];
							$status          =$row_usuario['status'];
                            $ultimaalteracao =$row_usuario['ultimaalteracao'];							
                            $fotos           =$row_usuario['fotos'];							
							$finales++;

						?>	
			<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 StatusSN($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 }?>
						<tr>
							<td colspan='6'> 
								<?php 
									$inicios=$offset+1;
									$finales+=$inicios -1;
									echo "Mostrando $inicios al $finales de $numrows registros";
									echo paginate( $page, $total_pages, $adjacents);
								?>
							</td>
						</tr>


				</tbody>			
			</table>

		</div>	


<?php
}

}


?>

Para fazer a paginação


<?php
function paginate($page, $tpages, $adjacents) {
	$prevlabel = "&lsaquo; Anterior";
	$nextlabel = "Proximo &rsaquo;";
	$out = '<ul class="pagination   pull-right">';
	
	// etiqueta anterior

	if($page==1) {
		$out.= "<li class='page-item disabled'><a>$prevlabel</a></li>";
	} else if($page==2) {
		$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(1)'>$prevlabel</a></li>";
	}else {
		$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(".($page-1).")'>$prevlabel</a></li>";

	}
	
	// primeiro rótulo
	if($page>($adjacents+1)) {
		$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(1)'>1</a></li>";
	}
	// intervalo
	if($page>($adjacents+2)) {
		$out.= "<li class='page-item'><a>...</a></li>";
	}

	// Páginas

	$pmin = ($page>$adjacents) ? ($page-$adjacents) : 1;
	$pmax = ($page<($tpages-$adjacents)) ? ($page+$adjacents) : $tpages;
	for($i=$pmin; $i<=$pmax; $i++) {
		if($i==$page) {
			$out.= "<li class='active page-item'><a>$i</a></li>";
		}else if($i==1) {
			$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(1)'>$i</a></li>";
		}else {
			$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(".$i.")'>$i</a></li>";
		}
	}

	// intervalo

	if($page<($tpages-$adjacents-1)) {
		$out.= "<li class='page-item'><a>...</a></li>";
	}

	// Último

	if($page<($tpages-$adjacents)) {
		$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load($tpages)'>$tpages</a></li>";
	}

	// Próximo

	if($page<$tpages) {
		$out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(".($page+1).")'>$nextlabel</a></li>";
	}else {
		$out.= "<li class='disabled page-item'><a>$nextlabel</a></li>";
	}
	
	$out.= "</ul>";
	return $out;
}
?>

 

No seu arquivo que vai receber as buscas coloca isso


			<div class='col-sm-12 pull-right'>
			<div id="custom-search-input">
                            <div class="input-group col-md-12">
                                <input type="text" class="form-control" placeholder="Faça a sua busca aqui...."  id="q" onkeyup="load(1);" />
                                <span class="input-group-btn">
                                    <button class="btn btn-success" type="button" onclick="load(1);">
                                        <span class="glyphicon glyphicon-search"></span>
                                    </button>
                                </span>
                            </div>
                </div>
			</div>
			<div class='clearfix'></div>
			<hr>
			<center><div id="loader"></div></center><!-- Carga de datos ajax aqui -->
			<div id="resultados"></div><!-- Carga de datos ajax aqui -->
			<div class='outer_div'></div><!-- Carga de datos ajax aqui -->
            
			

Css para barra de busca


  <style type="text/css">
{
color: #666;
font: 90%/180% Arial, Helvetica, Sans-serif;
width: 800px;
max-width: 96%;
margin: 0 auto;
}
a {
 
  color: #69c;
text-decoration: none;
}
a:hover {
   color: #f43319;
}
p {
   margin: 0 0 20px;
}


input {
  outline: none;
}
input[type=buscar] {
 -webkit-appearance: textfield;
 -webkit-box-sizing: content-box;
 font-family: inherit;
font-size: 100%;
}
input: :-webkit-search-decoration,
input: :-webkit-search-cancel-button {
   display: none;
}


input[type=buscar] {
  background: #1213312
url(https://static.tumblr.com/ftv85bp/MIXmud4tx/search-icon.png) no-repeat 9px center;
    border: solid 1px #000;
   padding: 15px 85px 9px   19px;
  width: 100px;


     -webkit-border-radius: 10em;
     -moz-border-radius: 10em;
     border-radius: 10em;

    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    transition: all .5s;
}

input[type=buscar]:focus {
  width: 50%;
  background-color: #fff;
  border-color: #66cc75;


       -webkit-box-shadow: 0 0 5px rbga(109,207,246,.5);
       -moz-box-shadow: 0 0 5px rbga(109,207,246,.5);
       box-shadow: 0 0 5px rbga(109,207,246,.5);
}

input:-moz-placeholder {
  color: #999;
}
 

</style>

Javascript


 <script type="text/javascript">
        
        		$(function() {
			load(1);
		});
		function load(page){
			var query=$("#q").val();
			var per_page=10;
			var parametros = {"action":"ajax","page":page,'query':query,'per_page':per_page};
			$("#loader").fadeIn('slow');
			$.ajax({
				url:'ajax/nome-do-arquivo.php',
				data: parametros,
				 beforeSend: function(objeto){
				$("#loader").html("Estamos fazendo a sua busca no banco de dados aguarde....");
			  },
				success:function(data){
					$(".outer_div").html(data).fadeIn('slow');
					$("#loader").html("");
				}
			})
		}
    </script>

É isso ai espero ter ajudado....

 

amigão eu não entendi (arquivo da pasta ajax) até porque eu ainda não mexi com o mesmo ! desculpa minha ignorância, poderia me montar esses arquivos e me enviar dentro de uma pasta só pra eu testar e analisar ?

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, Jack Oliveira disse:

<?php $DB_HOST="localhost"; $DB_NAME= "root"; $DB_USER= "banco_de_dados"; $DB_PASS= "sua_senha"; $Tabela="sua_tabela_do_banco"; # conectar o banco de dados $con=@mysqli_connect($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME); if(!$con){ die("impossível conectar: ".mysqli_error($con)); } if (@mysqli_connect_errno()) { die("Falha na conexão: ".mysqli_connect_errno()." : ". mysqli_connect_error()); } ?>

aqui você vai criar um arquivo conexion.php

1 hora atrás, Jack Oliveira disse:

<?php //StatusSN function StatusSN($Status){ if ($Status == '1') { echo '<span class="btn btn-success active">Pago</span>'; } elseif ($Status == '2') { echo '<span class="btn btn-warning active">Pendente</span>'; } elseif ($Status == '3') { echo '<span class="btn btn-danger active">Não Pago</span>'; } } /* Conectar ao banco de dados*/ require_once ("../conexion.php"); mysqli_set_charset($con,"utf8"); $action = (isset($_REQUEST['action'])&& $_REQUEST['action'] !=NULL)?$_REQUEST['action']:''; if($action == 'ajax'){ $query = mysqli_real_escape_string($con,(strip_tags($_REQUEST['query'], ENT_QUOTES))); $tables="".$Tabela.""; $campos="*"; $sWhere="".$Tabela.".cliente LIKE '%".$query."%' OR ".$Tabela.".email LIKE '%".$query."%' OR ".$Tabela.".data LIKE '%".$query."%' OR ".$Tabela.".valor LIKE '%".$query."%' OR ".$Tabela.".status LIKE '%".$query."%' OR ".$Tabela.".ultimaalteracao LIKE '%".$query."%' OR ".$Tabela.".metodo LIKE '%".$query."%'"; $sWhere.=" order by ".$Tabela.".cliente"; include 'pagination.php'; // inclui arquivo de paginação // variáveis de paginação $page = (isset($_REQUEST['page']) && !empty($_REQUEST['page']))?$_REQUEST['page']:1; $per_page = intval($_REQUEST['per_page']); // quantos registros você deseja mostrar $adjacents = 50; // intervalo entre as páginas após o número de adjacentes $offset = ($page - 1) * $per_page; // Conte o número total de linhas na sua tabela * / $count_query = mysqli_query($con,"SELECT count(*) AS numrows FROM $tables where $sWhere "); if ($row= mysqli_fetch_array($count_query)){$numrows = $row['numrows'];} else {echo mysqli_error($con);} $total_pages = ceil($numrows/$per_page); // consulta principal para buscar os dados $query = mysqli_query($con,"SELECT $campos FROM $tables where $sWhere LIMIT $offset,$per_page"); // percorre os dados buscados $finales=0; if ($numrows>0){ ?> <html <head lang="pt-br" class="no-js"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="robots" content="noindex" /> <meta name="viewport" content="width=device-width, initial-scale=1"> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-modal/0.9.1/jquery.modal.min.js"></script> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery-modal/0.9.1/jquery.modal.min.css" /> </head> <div class="table-responsive"> <table class="table table-striped table-hover"> <thead> <tr> <th>Id</th> <th>Imagem</th> <th>Clientes</th> <th>E-mail</th> <th>Serviços</th> <th>Data</th> <th>Valor</th> <th>Método</th> <th>Status</th> <th>Data Edição</th> <th width="50%">Ações</th> </tr> </thead> <tbody> <?php while($row_usuario = mysqli_fetch_array($query)){ $id = $row_usuario['id']; $cliente = $row_usuario['cliente']; $email = $row_usuario['email']; $servico =$row_usuario['servico']; $data =$row_usuario['data']; $valor =$row_usuario['valor']; $metodo =$row_usuario['metodo']; $status =$row_usuario['status']; $ultimaalteracao =$row_usuario['ultimaalteracao']; $fotos =$row_usuario['fotos']; $finales++; ?> <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 StatusSN($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 }?> <tr> <td colspan='6'> <?php $inicios=$offset+1; $finales+=$inicios -1; echo "Mostrando $inicios al $finales de $numrows registros"; echo paginate( $page, $total_pages, $adjacents); ?> </td> </tr> </tbody> </table> </div> <?php } } ?>

este aqui você vai criar uma pasta ajax/nome-do-arquivo.php

 

17 minutos atrás, groudon900 disse:

<?php function paginate($page, $tpages, $adjacents) { $prevlabel = "&lsaquo; Anterior"; $nextlabel = "Proximo &rsaquo;"; $out = '<ul class="pagination pull-right">'; // etiqueta anterior if($page==1) { $out.= "<li class='page-item disabled'><a>$prevlabel</a></li>"; } else if($page==2) { $out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(1)'>$prevlabel</a></li>"; }else { $out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(".($page-1).")'>$prevlabel</a></li>"; } // primeiro rótulo if($page>($adjacents+1)) { $out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(1)'>1</a></li>"; } // intervalo if($page>($adjacents+2)) { $out.= "<li class='page-item'><a>...</a></li>"; } // Páginas $pmin = ($page>$adjacents) ? ($page-$adjacents) : 1; $pmax = ($page<($tpages-$adjacents)) ? ($page+$adjacents) : $tpages; for($i=$pmin; $i<=$pmax; $i++) { if($i==$page) { $out.= "<li class='active page-item'><a>$i</a></li>"; }else if($i==1) { $out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(1)'>$i</a></li>"; }else { $out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(".$i.")'>$i</a></li>"; } } // intervalo if($page<($tpages-$adjacents-1)) { $out.= "<li class='page-item'><a>...</a></li>"; } // Último if($page<($tpages-$adjacents)) { $out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load($tpages)'>$tpages</a></li>"; } // Próximo if($page<$tpages) { $out.= "<li class='page-item'><a href='javascript:void(0);' onclick='load(".($page+1).")'>$nextlabel</a></li>"; }else { $out.= "<li class='disabled page-item'><a>$nextlabel</a></li>"; } $out.= "</ul>"; return $out; } ?>

Este aqui você pode colocar na propria pasta ajax se assim querer

ex: ajax/paginacao.php

19 minutos atrás, groudon900 disse:

<div class='col-sm-12 pull-right'> <div id="custom-search-input"> <div class="input-group col-md-12"> <input type="text" class="form-control" placeholder="Faça a sua busca aqui...." id="q" onkeyup="load(1);" /> <span class="input-group-btn"> <button class="btn btn-success" type="button" onclick="load(1);"> <span class="glyphicon glyphicon-search"></span> </button> </span> </div> </div> </div> <div class='clearfix'></div> <hr> <center><div id="loader"></div></center><!-- Carga de datos ajax aqui --> <div id="resultados"></div><!-- Carga de datos ajax aqui --> <div class='outer_div'></div><!-- Carga de datos ajax aqui -->

Este aqui você coloca numa div row do index.php do seu sistema ele vai trazer todos os resultados que estará a pasta ajax/nome-do-arquivo.php

entendeu?

1 hora atrás, Jack Oliveira disse:

<style type="text/css"> { color: #666; font: 90%/180% Arial, Helvetica, Sans-serif; width: 800px; max-width: 96%; margin: 0 auto; } a { color: #69c; text-decoration: none; } a:hover { color: #f43319; } p { margin: 0 0 20px; } input { outline: none; } input[type=buscar] { -webkit-appearance: textfield; -webkit-box-sizing: content-box; font-family: inherit; font-size: 100%; } input: :-webkit-search-decoration, input: :-webkit-search-cancel-button { display: none; } input[type=buscar] { background: #1213312 url(https://static.tumblr.com/ftv85bp/MIXmud4tx/search-icon.png) no-repeat 9px center; border: solid 1px #000; padding: 15px 85px 9px 19px; width: 100px; -webkit-border-radius: 10em; -moz-border-radius: 10em; border-radius: 10em; -webkit-transition: all .5s; -moz-transition: all .5s; transition: all .5s; } input[type=buscar]:focus { width: 50%; background-color: #fff; border-color: #66cc75; -webkit-box-shadow: 0 0 5px rbga(109,207,246,.5); -moz-box-shadow: 0 0 5px rbga(109,207,246,.5); box-shadow: 0 0 5px rbga(109,207,246,.5); } input:-moz-placeholder { color: #999; } </style>

Este CSS você coloca onde vai esta o código que vai trazer os resultados da pasta ajax certo!!

1 hora atrás, Jack Oliveira disse:

<script type="text/javascript"> $(function() { load(1); }); function load(page){ var query=$("#q").val(); var per_page=10; var parametros = {"action":"ajax","page":page,'query':query,'per_page':per_page}; $("#loader").fadeIn('slow'); $.ajax({ url:'ajax/nome-do-arquivo.php', data: parametros, beforeSend: function(objeto){ $("#loader").html("Estamos fazendo a sua busca no banco de dados aguarde...."); }, success:function(data){ $(".outer_div").html(data).fadeIn('slow'); $("#loader").html(""); } }) } </script>

Este você pode colocar no footer.php do seu sistema

fazendo tudo certo ai ele vai funcionar 100%

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por ILR master
      Fala galera.
      Espero que todos estejam bem.
      Seguinte: Tenho um arquivo xml onde alguns campos estão com : (dois pontos), como o exemplo abaixo:
       
      <item>
      <title>
      d sa dsad sad sadasdas
      </title>
      <link>
      dsadas dsa sad asd as dsada
      </link>
      <pubDate>sadasdasdsa as</pubDate>
      <dc:creator>
      d sad sad sa ad as das
      </dc:creator>
      </item>
       
      Meu código:
       
      $link = "noticias.xml"; 
      $xml = simplexml_load_file($link); 
      foreach($xml -> channel as $ite) {     
           $titulo = $ite -> item->title;
           $urltitulo = $ite -> item->link;
           print $urltitulo = $ite -> item->dc:creator;
      } //fim do foreach
      ?>
       
      Esse campo dc:creator eu não consigo ler. Como faço?
       
      Agradeço quem puder me ajudar.
       
      Abs
       
       
    • Por First
      Olá a todos!
       
      Eu estou criando um sistema do zero mas estou encontnrando algumas dificuldades e não estou sabendo resolver, então vim recorrer ajuda de vocês.
      Aqui está todo o meu código: https://github.com/PauloJagata/aprendizado/
       
      Eu fiz um sistema de rotas mas só mostra o conteúdo da '/' não sei porque, quando eu tento acessar o register nada muda.
      E eu também quero que se não estiver liberado na rota mostra o erro de 404, mas quando eu tento acessar um link inválido, nada acontece.
      Alguém pode me ajudar com isso? E se tiver algumas sugestão para melhoria do código também estou aceitando.
       
       
      Desde já, obrigado.
    • Por landerbadi
      Olá pessoal, boa tarde
       
      Tenho uma tabela chamada "produtos" com os seguintes campos (id, produto) e outra tabela chamada "itens" com os seguintes campos (id, prod_01, prod_02, prod_03, prod_04).
       
      Na tabela produtos eu tenho cadastrado os seguintes produtos: laranja, maçã, uva, goiaba, arroz, feijão, macarrão, etc.
       
      Na tabela itens eu tenho cadastrado os itens da seguinte maneira:
       
      1, laranja, uva, arroz, feijão;
      2, maçã, macarrão, goiaba, uva;
      3, arroz, feijão, maçã, azeite
       
      Meu problema é o seguinte: 
      Eu escolho um produto da tabela "produtos", por exemplo "uva".  Preciso fazer uma consulta na tabela "itens" para ser listado todos os registros que contenham o produto "uva" e que todos os demais produtos estejam cadastrados na tabela "produtos".
       
      No exemplo acima seria listado apenas dois registros, pois o terceiro registro não contém o produto "uva". 
       
      Alguém pode me ajudar? Pois estou quebrando a cabeça a vários dias e não consigo achar uma solução.
    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, plural, ativo. Nela tem cadastrado vários itens e seu respectivo plural. No campo ativo eu coloco a letra "S" para informar que esta palavra está ativa no sistema. Por exemplo: 1, casa, casas, S 2, mesa, mesas, S 3, cama, camas, S 4, moto, motos, S 5, rádio, rádios O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "variações" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, camas, moto 2, mesas, casas, radio 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela variações da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "casa". Preciso fazer com que o php me liste todos os registros da tabela "variações" que contenham a palavra "casa". Porém se tiver algum registro com a palavra "casas" também tem que ser listado. Neste caso ele irá encontrar dois registros. Agora eu preciso que o php verifique os demais itens e faça a listagem apenas dos item que estão ativos (que contenham um "S" no campo ativo. Neste caso ele irá encontrar apenas um registro, pois o segundo registro contém a palavra "rádio". E "rádio" não está ativo na tabela itens. Como faço isso?
    • Por First
      Olá a todos!
       
      Quando eu tento fazer o login me mostra esse erro "Could not log you in."; Alguém sabe me ajudar a resolver esse problema no meu código?
      <?php require_once("core/init.php"); if (Input::exists()) { if (Token::check(Input::get("token"))) { $validate = new Validate(); $validation = $validate->check($_POST, array( "username" => array("required" => true), "password" => array("required" => true) )); if ($validation->passed()) { $user = new User(); $remember = (Input::get("remember")) === "on" ? true : false; $login = $user->login(Input::get("username"), Input::get("password"), $remember); if ($login) { Session::flash("home", "Welcome back!"); Redirect::to("index.php"); } else { echo "Could not log you in."; } } else { foreach ($validation->errors() as $error) { echo $error."<BR>"; } } } } ?> <form action="" method="POST"> <div class="field"> <label for="username">Username</label> <input type="text" name="username" id="username"> </div> <div class="field"> <label for="password">Password</label> <input type="password" name="password" id="password"> </div> <div class="field"> <label for="remember"> <input type="checkbox" name="remember" id="remember"> Remember me </label> </div> <input type="hidden" name="token" value="<?php echo Token::generate(); ?>"> <input type="submit" value="Log in"> </form>  
       
      Desde já obrigado.
×

Informação importante

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