Foros del Web » Programando para Internet » PHP »

Buscador en base de datos

Estas en el tema de Buscador en base de datos en el foro de PHP en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 03/07/2015, 23:27
 
Fecha de Ingreso: julio-2015
Mensajes: 14
Antigüedad: 8 años, 9 meses
Puntos: 0
Exclamación Buscador en base de datos

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)."'>&laquo; 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 &raquo;</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>
  #2 (permalink)  
Antiguo 04/07/2015, 00:06
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Buscador en base de datos

Bienvenido a FDW.

Para hacer eso, tendrías que utilizar una petición asíncrona (Ajax) para que así ya no recargue la ventana al realizar la búsqueda.

Échale un ojo a este ejemplo. Lo único que cambiaría sería que, en lugar de usar un <select>, usarías una caja de texto, además de que buscarías el dato por el valor escrito y no por el id que enviarías.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 04/07/2015, 09:45
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: Buscador en base de datos

Implementa el data tables es excelente y es exactamente lo que necesitas
  #4 (permalink)  
Antiguo 04/07/2015, 10:07
 
Fecha de Ingreso: julio-2015
Mensajes: 14
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: Buscador en base de datos

Cita:
Iniciado por Alexis88 Ver Mensaje
Bienvenido a FDW.

Para hacer eso, tendrías que utilizar una petición asíncrona (Ajax) para que así ya no recargue la ventana al realizar la búsqueda.

Échale un ojo a [URL="http://www.w3schools.com/php/php_ajax_database.asp"]este ejemplo[/URL]. Lo único que cambiaría sería que, en lugar de usar un <select>, usarías una caja de texto, además de que buscarías el dato por el valor escrito y no por el id que enviarías.

Saludos
El ingles y ajax no se me dan muy bien, pero habra que hacer el esfuerzo, gracias!

Cita:
Iniciado por xfxstudios Ver Mensaje
Implementa el data tables es excelente y es exactamente lo que necesitas
No conocia eso,ahora voyva ver que onda, graciosos

Etiquetas: buscador, html, mysql, registro, select, sql, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:31.