Foros del Web » Programando para Internet » PHP »

Filtro Busqueda - con datos de cantidad

Estas en el tema de Filtro Busqueda - con datos de cantidad en el foro de PHP en Foros del Web. buenas !! amigos , colegas... necesito desarrollar un filtro para busquedas que me muestre las cantidad de resultados posibles que tiene cada uno.. Ejemplo : ...
  #1 (permalink)  
Antiguo 03/08/2011, 16:08
Avatar de jakuam  
Fecha de Ingreso: abril-2007
Mensajes: 354
Antigüedad: 17 años
Puntos: 0
Filtro Busqueda - con datos de cantidad

buenas !! amigos , colegas... necesito desarrollar un filtro para busquedas que me muestre las cantidad de resultados posibles que tiene cada uno..
Ejemplo :
busco hoteles en argentina .. y me tira todos los hoteles.. ahora quiero mostrar un filtro asi . ..

Ubicacion:
Hoteles Buenos Aires (150)
Hoteles en Mendoza (50)
Hoteles en Cordoba (65)
....
...
Tipo:
Hotel (540)
Apart (200)
..
..

Pagina ejemplo VER AQUI>>

para hacer esto necesito hacer varias consultas mysql? .. como puedo crear estos filtros mostrando la cantidad de resultados que tiene cada uno ..

gracias espero su ayuda
__________________
Jakuam
Reserva Hoteles Online
Turismo San Rafael Mendoza
  #2 (permalink)  
Antiguo 03/08/2011, 17:50
Avatar de ramiro_md  
Fecha de Ingreso: septiembre-2008
Mensajes: 274
Antigüedad: 15 años, 8 meses
Puntos: 26
Respuesta: Filtro Busqueda - con datos de cantidad

Si, vas a tener que hacer algunas querys de más. Primero obtener todos los hoteles, luego segun su id la región, luego el tipo, y asi...vas creando tu filtro.
Edit: luego de cada query, un mysql_affected_rows() bastará para saber esos totales, luego te fijas como manejas el resultado. Si lo guardas en una var o lo imprimís de una, etc..
  #3 (permalink)  
Antiguo 03/08/2011, 18:35
 
Fecha de Ingreso: abril-2008
Ubicación: Santa Fe, Argentina
Mensajes: 41
Antigüedad: 16 años
Puntos: 14
Respuesta: Filtro Busqueda - con datos de cantidad

Hacerlo como dice ramiro_md funciona, pero no es la manera ideal.

En caso de que nuestro dataset sea:

Código:
mysql> SELECT * FROM locaciones;
+----+-------------+--------------+-------+
| id | nombre      | provincia    | tipo  |
+----+-------------+--------------+-------+
| 10 | Solans      | Santa Fe     | Hotel |
|  9 | Barisit     | Santa Fe     | Hotel |
|  8 | Urquiza     | Santa Fe     | Apart |
|  7 | Soltigua    | Mendoza      | Apart |
|  6 | Diplomatic  | Mendoza      | Hotel |
|  5 | Huentala    | Mendoza      | Hotel |
|  4 | Bys Palermo | Buenos Aires | Hotel |
|  3 | Carlos      | Buenos Aires | Apart |
|  2 | Congreso    | Buenos Aires | Apart |
|  1 | Serena      | Buenos Aires | Hotel |
+----+-------------+--------------+-------+
Podemos obtener cuantos hoteles hay en cada provincia

Código:
mysql> SELECT provincia, COUNT(*) FROM locaciones WHERE tipo = 'Hotel' GROUP BY provincia;
+--------------+----------+
| provincia    | COUNT(*) |
+--------------+----------+
| Buenos Aires |        2 |
| Mendoza      |        2 |
| Santa Fe     |        2 |
+--------------+----------+

Y qué cantidad de cada tipo de locación, sin discriminar provincia

Código:
mysql> SELECT tipo, COUNT(*) FROM locaciones GROUP BY tipo;
+-------+----------+
| tipo  | COUNT(*) |
+-------+----------+
| Hotel |        6 |
| Apart |        4 |
+-------+----------+
Para que el código resulte más autocomentado, se puede cambiar el nombre de la columna con AS, de manera que sea más entendible al usar el FETCH_ASSOC de tu interfaz de abstracción (ej. mysql_fetch_assoc())

Código:
mysql> SELECT provincia, COUNT(*) AS cantidad FROM locaciones WHERE tipo = 'Apart' GROUP BY provincia;
+--------------+----------+
| provincia    | cantidad |
+--------------+----------+
| Buenos Aires |        2 |
| Mendoza      |        1 |
| Santa Fe     |        1 |
+--------------+----------+
Código:
mysql> SELECT tipo, COUNT(*) AS cantidad FROM locaciones GROUP BY tipo;
+-------+----------+
| tipo  | cantidad |
+-------+----------+
| Hotel |        6 |
| Apart |        4 |
+-------+----------+
  #4 (permalink)  
Antiguo 03/08/2011, 18:58
Avatar de ramiro_md  
Fecha de Ingreso: septiembre-2008
Mensajes: 274
Antigüedad: 15 años, 8 meses
Puntos: 26
Respuesta: Filtro Busqueda - con datos de cantidad

Dependiendo de como tenga el EER de la bd hay un abanico de posibilidades.
  #5 (permalink)  
Antiguo 05/08/2011, 08:42
Avatar de jakuam  
Fecha de Ingreso: abril-2007
Mensajes: 354
Antigüedad: 17 años
Puntos: 0
Respuesta: Filtro Busqueda - con datos de cantidad

muchas gracias .. si era como creia .. sacar las cantidad mediante COUNT de lo que necesito .. muchas gracias a los 2
__________________
Jakuam
Reserva Hoteles Online
Turismo San Rafael Mendoza
  #6 (permalink)  
Antiguo 31/08/2011, 16:53
Avatar de jakuam  
Fecha de Ingreso: abril-2007
Mensajes: 354
Antigüedad: 17 años
Puntos: 0
Respuesta: Filtro Busqueda - con datos de cantidad

Ahora si yo vengo con una buscqueda ejemplo por fechas, numeros de habitaciones huespedes etc.. y me tira los que tengo disponibles. Como hago los filtros tengo que poner en todos los query ese filtro tambien..!

pongo ejemplo de un query de una busqueda :
Código PHP:
SELECT *  FROM alojamientos habitacionescal_calendariociudades WHERE  AND alojamientos.pais ='$pais' AND alojamientos.provincia ='$provincia' AND habitaciones.alojar_id alojamientos.alojar_id AND cal_calendario.id_habitacion habitaciones.hab_id AND habitaciones.pax_max >= '$pax1' AND cal_calendario.tarifa_normal '0' AND cal_calendario.fecha ='$fechabus11' AND cal_calendario.estancia_minima <= '$dias_diferencia1' AND ciudades.Country alojamientos.pais AND ciudades.Subdivision alojamientos.provincia AND ciudades.Location alojamientos.ciudad GROUP BY alojamientos.alojar_id  ORDER BY alojamientos.comision DESC,mejor_precio DESC 
como realizo los filtros ...
__________________
Jakuam
Reserva Hoteles Online
Turismo San Rafael Mendoza
  #7 (permalink)  
Antiguo 05/09/2011, 06:24
Avatar de jakuam  
Fecha de Ingreso: abril-2007
Mensajes: 354
Antigüedad: 17 años
Puntos: 0
Respuesta: Filtro Busqueda - con datos de cantidad

alguien .. que de una mano .. ayuda..!! saludos
__________________
Jakuam
Reserva Hoteles Online
Turismo San Rafael Mendoza

Etiquetas: cantidad, html, mysql, busquedas, filtros
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 12:10.