Buenas, les paso a detallar mi problema:
Tengo listada una base de datos en forma de tablas con paginacion, una columna es CATEGORIA, yo quiero hacer un buscador por categoria que al seleccionar el numero aparescan solamente los resultados con esa categoria, pero en la misma pagina, no que se abra otro php, estoy buscando y intentando hace dias pero no doy con la solucion, desde ya gracias!
Código:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Buscate Un Padel</title>
<link rel="stylesheet" type="text/css" href="partido.css"/>
</head>
<body>
<div id="contenedor">
<nav>
<a href="index.php" class="linknav">Inicio</a> |
<a href="registro.php" class="linknav">Registrate</a> |
<a href="" class="linknav">Buscar Partido</a>
</nav>
<div id="cuerpo">
<?php
//conexion a la base de datos
$host="localhost";
$user="root";
$pass="kavetoda31";
$db="padel";
$tabla="PAREJAS";
//conectamos con la base de datos
$con=mysql_connect($host,$user,$pass);
mysql_select_db($db,$con);
//establecemos condiciones de paginacion
$registros = 7;
@$pagina = $_GET ['pagina'];
if (!isset($pagina))
{
$pagina = 1;
$inicio = 0;
}
else
{
$inicio = ($pagina-1) * $registros;
}
//realizamos la busqueda en la base de datos
$pegar = "SELECT * FROM $tabla ORDER BY ID ASC LIMIT ".$inicio." , ".$registros." ";
$cad = mysql_query($pegar,$con) or die ( 'error al listar, $pegar' .mysql_errno());
//calculamos las paginas a mostrar
$contar = "SELECT * FROM $tabla";
$contarok = mysql_query($contar,$con);
$total_registros = mysql_num_rows($contarok);
//$total_paginas = ($total_registros / $registros);
$total_paginas = ceil($total_registros / $registros);
//imprimiendo los resultados
echo '<table border="1"">';
echo '<tr><th>Drive</th>';
echo '<th>Reves</th>';
echo '<th>Facebook</th>';
echo '<th>Categoria</th>';
echo '<th>Zona</th></tr>';
while ($array = mysql_fetch_array($cad))
{
echo '<tr>';
echo '<td>'.$array['NOMBREDRIVE']. '</td>';
echo '<td>'.$array['NOMBREREVES']. '</td>';
echo '<td>'.$array['FACEBOOK']. '</td>';
echo '<td>'.$array['CATEGORIA']. '</td>';
echo '<td>'.$array['ZONA']. '</td>';
echo '</tr>';
}
/* ==============================================*/
//creando los enlaces de paginacion de resultados
echo "<center><p>";
if($total_registros>$registros){
if(($pagina - 1) > 0) {
echo "<span class='pactiva'><a href='?pagina=".($pagina-1)."'>« Anterior</a></span> ";
}
// Numero de paginas a mostrar
$num_paginas=50;
//limitando las paginas mostradas
$pagina_intervalo=ceil($num_paginas/2)-1;
// Calculamos desde que numero de pagina se mostrara
$pagina_desde=$pagina-$pagina_intervalo;
$pagina_hasta=$pagina+$pagina_intervalo;
// Verificar que pagina_desde sea negativo
if($pagina_desde<1){ // le sumamos la cantidad sobrante para mantener el numero de enlaces mostrados $pagina_hasta-=($pagina_desde-1); $pagina_desde=1; } // Verificar que pagina_hasta no sea mayor que paginas_totales if($pagina_hasta>$total_paginas){
$pagina_desde-=($pagina_hasta-$total_paginas);
$pagina_hasta=$total_paginas;
if($pagina_desde<1){
$pagina_desde=1;
}
}
for ($i=$pagina_desde; $i<=$pagina_hasta; $i++){
if ($pagina == $i){
echo "<span class='pnumero'>".$pagina."</span> ";
}else{
echo "<span class='pactiva'><a href='?pagina=$i'>$i</a></span> ";
}
}
if(($pagina + 1)<=$total_paginas) {
echo " <span class='pactiva'><a href='?pagina=".($pagina+1)."'>Siguiente »</a></span>";
}
}
echo "</p></center>";
?>
<form method="post">
<select name="categoria" action="partido.php">
<option value="0">Seleccione una categoria</option>
<option value="8">8</option>
<option value="7">7</option>
<option value="6">6</option>
<option value="5">5</option>
<option value="4">4</option>
<option value="3">3</option>
<option value="2">2</option>
<option value="1">1</option>
</select>
<input type="submit" value="Buscar"/>
</form>
</div>
<table>
</div>
</body>
</html>