hola Necrobone, creo enender tu problema, y beuno para probarlo me cree un escernario que refleje tu situacion, espero estar acertando.
mi escenario: tengo una base de datos con 2 tablas producto y categoria, y bueno al inicio muestro todos los productos sin improtar la categoria a la que pertenecen, luego cuando el usuario decide filtrar los productos de una determinada categoria lo que hace es seleccionar de un combo la que desee y con un boton filtrar, muestro solo aquellos productos que pertenecen a esa categoria.
Aqui te dejo el codigo de lo que puedes hacer,:
Archivo index.php
Código:
<?php
$value = $_REQUEST['cbx_cat'];
$sql = "select cat_id, cat_nombre from categoria";
$db->setQuery($sql);
$rows = $db->loadRowList();
// la 3 lineas anteriores debes cambiarlas a tu modo de usar tu conexion y consultas a tu base de datos.
echo "<form id =\"form1\" action=\"index.php\" method=\"post\">\n";
$combo = "<select name=\"cbx_cat\" id=\"cbx_cat\" >\n";
for( $i = 0, $n = count($rows); $i < $n; $i++ ){
if( $rows[$i][0] == $value ){
$combo .= "\t<option value=\"".$rows[$i][0]."\" selected=\"selected\">".$rows[$i][1]."</option>\n";
}else{
$combo .= "\t<option value=\"".$rows[$i][0]."\">".$rows[$i][1]."</option>\n";
}
}
echo $combo;
echo "<input type=\"submit\" value = \"filtrar\" name=\"submit\" />";
echo "</form>";
if( isset($value) ){
$sql = "select * from producto where cat_id = ".$value;
}
else{
$sql = "select * from producto ";
}
$db->setQuery($sql);
$prods = $db->loadObjectList();
// de igual manera debes cambiar para realizar la consulta.
echo "<table style=\"border: 1px solid #0000ff;\">\n <tr><th>Codigo</th><th>Descripcion</th></tr>";
foreach( $prods as $key => $v ){
echo "<tr><td>".$v->pro_id."</td> <td>".$v->pro_nombre."</td><tr>\n";
}
echo "</table>";
?>
Saludos. espero te sirva