Foros del Web » Programando para Internet » PHP »

Filtrar mas de un resultado con php

Estas en el tema de Filtrar mas de un resultado con php en el foro de PHP en Foros del Web. Buenas Estoy creando una grilla a partir de una db con php/mysql, todo ok, ahora debo hacer unos filtros, pude hacer que seleccionando uno filtre ...
  #1 (permalink)  
Antiguo 31/07/2009, 13:56
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Filtrar mas de un resultado con php

Buenas

Estoy creando una grilla a partir de una db con php/mysql, todo ok, ahora debo hacer unos filtros, pude hacer que seleccionando uno filtre bien y muestre cuantos registros hay solo del filtro seleccionado, pero como hago si quiero mas filtros?, ponele, que filtre por nombre, apellido, edad?, por ahora solo hice uno solo de esta manera:

Código PHP:
<?php
if ($_POST['rate'])
{
// Tomamos el valor ingresado
$buscar $_POST['rate'];
 
// Si está vacío, lo informamos, sino realizamos la búsqueda
if(empty($buscar))
{
echo 
"No se ha ingresado una cadena a buscar";
}else{
// Conexión a la base de datos y seleccion de registros
$con=mysql_connect("localhost","root","pass");
$sql "SELECT * FROM test WHERE rate like '%$buscar%'";
mysql_select_db("db"$con);
 
$result mysql_query($sql$con);
 
// Tomamos el total de los resultados
$total mysql_num_rows($result);
 
// Imprimimos los resultados
if ($row mysql_fetch_array($result)){
echo 
"Resultados para: <b>$buscar</b>";
do {
?>
<p><b><a href="index.php?mod=ficha&id_programa=<?=$row['id'];?>">
<?php
} while ($row mysql_fetch_array($result));
echo 
"<p>Resultados: $total</p>";
} else {
// En caso de no encontrar resultados
echo "No se encontraron resultados para: <b>$buscar</b>";
}
}
}
?>
Alguna ayuda?
  #2 (permalink)  
Antiguo 01/08/2009, 07:51
 
Fecha de Ingreso: junio-2006
Mensajes: 84
Antigüedad: 17 años, 10 meses
Puntos: 1
Respuesta: Filtrar mas de un resultado con php

Código PHP:
sql "SELECT * FROM test WHERE rate like '%$buscar%' AND name like'%name%' AND surname LIKE '%surname%'"
te refieres a esto?
  #3 (permalink)  
Antiguo 03/08/2009, 10:49
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Filtrar mas de un resultado con php

Cita:
Iniciado por lestatminiyo Ver Mensaje
Código PHP:
sql "SELECT * FROM test WHERE rate like '%$buscar%' AND name like'%name%' AND surname LIKE '%surname%'"
te refieres a esto?
Eso lo pense en realidad no es lo que busco, sino filtrar todo dentro de una misma tabla, por ejemplo tengo la tabla rate con los campos

very good, good, bad

quiero mostrar

Very Good: 5
Good: 3
Bad: 5

eso quiero hacer, contar y mostrar cuantos votos tiene cada uno....algun ejemplo?
  #4 (permalink)  
Antiguo 03/08/2009, 11:08
Avatar de Ronin46  
Fecha de Ingreso: junio-2009
Mensajes: 398
Antigüedad: 14 años, 10 meses
Puntos: 8
Respuesta: Filtrar mas de un resultado con php

SELECT count(campo)
FROM tabla
GROUP BY campo

¿Algo así?
__________________
http://www.controldegastos.com, acepto sugerencias para el sitio.
Repetir conmingo: "tengo que dedicar más tiempo a gozar de placer"
  #5 (permalink)  
Antiguo 03/08/2009, 11:18
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Filtrar mas de un resultado con php

Cita:
Iniciado por Ronin46 Ver Mensaje
SELECT count(campo)
FROM tabla
GROUP BY campo

¿Algo así?
eso no te mostraria los datos de un solo campo?

yo tengo tres, good, bad, verygood...

hay alguna manera?

A ver tengo una tabla llamada survey, con una fila llamada rate y los campos, Very Good, Good, Bad

necesito mostrar que cantidad de votos tiene cada uno.
  #6 (permalink)  
Antiguo 03/08/2009, 11:21
Avatar de Ronin46  
Fecha de Ingreso: junio-2009
Mensajes: 398
Antigüedad: 14 años, 10 meses
Puntos: 8
Respuesta: Filtrar mas de un resultado con php

Si, así que tendrías que hacer tres consultas.

De todas formas, porque no pones un campo que sea valoración y pueda tomar esos tres valores, ¿no sería más sencillo?
__________________
http://www.controldegastos.com, acepto sugerencias para el sitio.
Repetir conmingo: "tengo que dedicar más tiempo a gozar de placer"
  #7 (permalink)  
Antiguo 03/08/2009, 11:26
 
Fecha de Ingreso: agosto-2003
Mensajes: 906
Antigüedad: 20 años, 8 meses
Puntos: 3
Respuesta: Filtrar mas de un resultado con php

Cita:
Iniciado por Ronin46 Ver Mensaje
Si, así que tendrías que hacer tres consultas.

De todas formas, porque no pones un campo que sea valoración y pueda tomar esos tres valores, ¿no sería más sencillo?
Ya lo hicieron asi, como puedo poner el numero que tiene?

hice algo asi:

$sql = "SELECT * FROM survey WHERE rate like '%$Very Good%' group by rate";
$sql = mysql_query($sql);
while($row = mysql_fetch_array($sql))
echo "Total: ".$row['rate']."<br>";

pero me muestra todos los que hay pero no en numero ajaj debo usar el count seguro, pero como mostrar el valor numero de la cantidad que hay?

Sino como dices que haga?
  #8 (permalink)  
Antiguo 03/08/2009, 11:36
Avatar de Ronin46  
Fecha de Ingreso: junio-2009
Mensajes: 398
Antigüedad: 14 años, 10 meses
Puntos: 8
Respuesta: Filtrar mas de un resultado con php

Si haces así la consulta usa la función mysql_num_rows http://es.php.net/manual/en/function.mysql-num-rows.php

Y si no haz el count, como veas.
__________________
http://www.controldegastos.com, acepto sugerencias para el sitio.
Repetir conmingo: "tengo que dedicar más tiempo a gozar de placer"
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 19:50.