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, tudo bem?
       
      Tenho o seguinte codigo:
       
       class Data {
      public static function ExibirTempoDecorrido($date)
      {
          if(empty($date))
          {
              return "Informe a data";
          }
          $periodos = array("segundo", "minuto", "hora", "dia", "semana", "mês", "ano", "década");
          $duracao = array("60","60","24","7","4.35","12","10");
          $agora = time();
          $unix_data = strtotime($date);
          // check validity of date
          if(empty($unix_data))
          {  
              return "Bad date";
          }
          // is it future date or past date
          if($agora > $unix_data) 
          {  
              $diferenca     = $agora - $unix_data;
              $tempo         = "atrás";
          } 
          else 
          {
              $diferenca     = $unix_data - $agora;
              $tempo         = "agora";
          }
          for($j = 0; $diferenca >= $duracao[$j] && $j < count($duracao)-1; $j++) 
          {
              $diferenca /= $duracao[$j];
          }
          $diferenca = round($diferenca);
          if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
          return "$diferenca $periodos[$j] {$tempo}";
      }
      }
       
      Funciona redondinho se o valor retornado for de algumas horas, mas...
      Quando passa de dois meses, ele retorna a palavra mess. Deve ser por conta dessa linha
      if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
       
      Quero que modre:
       
      2 meses atrás
      e não
      2 mess atrás.
       
      Espero que tenham entendido.
       
      Valeu
    • Por Carlos Web Soluções Web
      Olá...
      Estou tentando fazer o seguinte !!
      Listando dados em tabela !!
      Gostaria que....se na listagem houver 4 linhas...indepedente de seu número de ID, faça a listagem em ID ser em ordem 1 2 3 4 !!
      Exemplo...se tiver uma listagem de dados que está em ID 1 3 3...faça ficar 1 2 3 !!

       
      echo "<table class='tabela_dados' border='1'> <tr> <td>ID</td> <td>Nome Empresa</td> <td>Responsável</td> <td>Telefone 1</td> <td>Telefone 2</td> <td>E-mail 1</td> <td>E-mail 2</td> <td>Endereço</td> <td>CEP</td> <td>Bairro</td> <td>AÇÃO 1</td> <td>AÇÃO 2</td> </tr> "; $sql = "SELECT ID FROM usuarios_dados WHERE Usuario='$usuario'"; $result = $conn->query($sql); $num_rows = $result->num_rows; $Novo_ID = 1; for ($i = 0; $i < $num_rows; $i++) { $registro = $result -> fetch_row(); $sql2 = "UPDATE usuarios_dados SET ID='$Novo_ID' WHERE ID='$Novo_ID'"; $result2 = $conn->query($sql2); $Novo_ID++; } $sql = "SELECT * FROM usuarios_dados"; $result = $conn->query($sql); if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "<tr> <td>$row[ID]</td> <td>$row[Nome_Empresa]</td> <td>$row[Responsavel]</td> <td>$row[Telefone_1]</td> <td>$row[Telefone_2]</td> <td>$row[Email_1]</td> <td>$row[Email_2]</td> <td>$row[Endereço]</td> <td>$row[CEP]</td> <td>$row[Bairro]</td> <td> <form method='post' action='Editar_Dados.php'> <input type='hidden' name='usuario' value='$usuario'> <input type='hidden' name='senha' value='$senha'> <input type='hidden' name='ID' value='$row[ID]'> <input type='submit' style='padding: 10px;' value='EDITAR'> </form> </td> <td> <form method='post' action='Deletar_Dados.php'> <input type='hidden' name='usuario' value='$usuario'> <input type='hidden' name='senha' value='$senha'> <input type='hidden' name='ID' value='$row[ID]'> <input type='submit' style='padding: 10px;' value='DELETAR'> </form> </td> </tr> "; } } else { echo "0 results"; } $conn->close();  
    • Por ILR master
      Boa tarde pessoal, tudo bem ?
       
      Eu uso o tinymce para cadastro de textos no meu siite, porém, quero fazer um sistema para que os colunistas possam fazer o próprio post.
      O problema do tinymce, é que ele mantém a formatação do texto copiado, como tamanho de fonts, negritos, etc... Quero que o usuário cole o texto e a própria textarea limpe a formatação para que ele formate como quiser.
       
      A pergunta é:
       
      O tinymce tem uma opção para desabilitar a formatação quando um texto é colocado?
      Tem alguma função via java ou php para retirar a formatação assim que o texto é colado?
      Ou é melhor usar um outro editor?
       
      Agradeço deste já.
    • Por Giovanird
      Olá a todos!
      Tenho uma pagina que possui uma DIV onde coloquei uma pagina PHP.
      Uso a função setInterval para atualizar a pagina inclusa dentro da DIV.
      O problema é que ao acessar o site , a DIV só me mostra a pagina inclusa somente quando completo o primeiro minuto.
      Preciso que a pagina inclusa já inicie carregada
       
      Meu código JavaScript e a DIV com a pagina PHP
       
      <script> function atualiza(){ var url = 'direita.php'; $.get(url, function(dataReturn) { $('#direita').html(dataReturn); }); } setInterval("atualiza()",60000); </script> <div> <span id="direita"></span> </div>  
    • Por ILR master
      Fala pessoal.
       
      Seguinte:
       
      Quero selecionar duas tabelas e mostrar com resultados intercalados. Abaixo segue um código explicando para vcs terem uma ideia.
       
      $consulta = "SELECT A.*, B.* FROM tabela1 A, tabela2 B'";
      $resultado = mysqli_query($conexao, $consulta) or die ("erro");
      while($busca = mysqli_fetch_array($resultado)){
       
      print $busca['cod_evento']; --> traz o código da tabela1 
      print $busca['titulo_evento']; -->  traz o titulo da tabela1
      print $busca['cod_noticia']; --> traz o código da tabela2
      print $busca['titulo_noticia']; --> traz o tituloda tabela2
       
      }
       
      Espero que entendam. Grato
       
×

Informação importante

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