Agrupar filtro por categoria php
Publicado por ccessaro (23 intervenciones) el 05/12/2016 23:57:35
Buenas Tardes! tengo una situacion que no he podido solucionar, tengo 2 filtros en un listado y uno de ellos es Categoria y el otro es para las lineas de cada categoria, cuando quiero las categorias y lineas por aparte funcionan en español le doy click a categoria uno y me salen todos los articulos de esa categoria y asi para todas .....pero las lineas me salen todas asi esten vinculadas a tras categorias, lo quiero es que cuando salgan las lineas solo se vean las que estan con esa categoria.
las categorias y linea las muestro por medio de un filtro y son menus independientes,
este es el CODIGO de menu lineas:
las tablas son las siguientes
CREATE TABLE `articulo` (
`id_articulo` int(11) NOT NULL auto_increment,
`referencia` char(20) character set utf8 collate utf8_spanish_ci default NULL,
`nombre` varchar(60) character set utf8 collate utf8_spanish_ci default NULL,
`precio` float default NULL,
`promo` float default '0',
`cuanto_hay` char(30) default '0',
`imagen` varchar(255) character set utf8 collate utf8_spanish_ci default 'no_photo',
`id_subcat` int(11) NOT NULL,
`categoria` varchar(50) NOT NULL,
`descripcion` text character set utf8 collate utf8_spanish_ci NOT NULL,
`fecha` datetime NOT NULL,
`restringido` char(2) character set utf8 collate utf8_spanish_ci default NULL,
PRIMARY KEY (`id_articulo`),
UNIQUE KEY `articulo_idx` (`referencia`),
KEY `id_subcat` (`id_subcat`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=619 ;
----------------------
CREATE TABLE `subcat` (
`id_subcat` int(11) NOT NULL auto_increment,
`name` varchar(60) default NULL,
`categoria` varchar(50) NOT NULL,
PRIMARY KEY (`id_subcat`),
UNIQUE KEY `subcat_udx` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=26 ;
la verdad no se si se necesiten mas datos lo que quiero en si es que cuando me muestre la categoria uno en las lineas solo muestren las lineas de categoria uno o que pueda agrupar las lineas por cada categoria.
Muchas gracias
las categorias y linea las muestro por medio de un filtro y son menus independientes,
este es el CODIGO de menu lineas:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
// Selecciona las lineas de fabricacion
$db_linea = new db_connect(DB_TYPE, HOST, DBNAME, USER, PASSWD);
$sql = " SELECT * FROM subcat ORDER BY id_subcat ASC";
$db_linea->db_exec($sql);
while($lineas = $db_linea->get_array())
{
echo
'
<tr>
</tr>
<ul class="menu-drop">
<li class="mod-2">
<ul class="cute">
<li class="subitem"><a href="product.php?filtro_c='.$lineas[id_subcat].'">'.$lineas[name].'</a></li>
</ul>
</li>
</ul>
';
}
?>
CREATE TABLE `articulo` (
`id_articulo` int(11) NOT NULL auto_increment,
`referencia` char(20) character set utf8 collate utf8_spanish_ci default NULL,
`nombre` varchar(60) character set utf8 collate utf8_spanish_ci default NULL,
`precio` float default NULL,
`promo` float default '0',
`cuanto_hay` char(30) default '0',
`imagen` varchar(255) character set utf8 collate utf8_spanish_ci default 'no_photo',
`id_subcat` int(11) NOT NULL,
`categoria` varchar(50) NOT NULL,
`descripcion` text character set utf8 collate utf8_spanish_ci NOT NULL,
`fecha` datetime NOT NULL,
`restringido` char(2) character set utf8 collate utf8_spanish_ci default NULL,
PRIMARY KEY (`id_articulo`),
UNIQUE KEY `articulo_idx` (`referencia`),
KEY `id_subcat` (`id_subcat`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=619 ;
----------------------
CREATE TABLE `subcat` (
`id_subcat` int(11) NOT NULL auto_increment,
`name` varchar(60) default NULL,
`categoria` varchar(50) NOT NULL,
PRIMARY KEY (`id_subcat`),
UNIQUE KEY `subcat_udx` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=26 ;
la verdad no se si se necesiten mas datos lo que quiero en si es que cuando me muestre la categoria uno en las lineas solo muestren las lineas de categoria uno o que pueda agrupar las lineas por cada categoria.
Muchas gracias
Valora esta pregunta


0