yo estoy en la categoria ejecutivos y muestro los productos en esa categoria. los productos usb los muestro por codigos, es decir no le coloco el campo autoincreentado, solo muestro los codigos ingresados por un administrador. tengo el producto con el codigo 800, y lo que quiero es que yo al hacer clic en el codigo 800, me debe mostrar primero el codigo 800 del usb con sus datos pero a la vez mostrarme los demas productos de la categoria ejecutivos y asi con los demas productos.
como lo hago.
El archivo que muestro los productos agrupados por categorias .
Código PHP:
sql_usb = "SELECT p.*, c.*, m.* FROM miusb_productos p, miusb_categorias c,
miusb_modelos m
WHERE p.idcategoria = c.idcategoria
AND p.idmodelo = m.idmodelo
GROUP BY p.idcategoria";
$rpta_usb = mysql_query($sql_usb) or die(mysql_error());
$i = 1;
while($fila_usb = mysql_fetch_array($rpta_usb)){
#consulto las demas categorias de los USB.
$resultado_cat_productos = "SELECT p.*, c.*, m.* FROM miusb_productos p, miusb_categorias c, miusb_modelos m
WHERE p.idcategoria = c.idcategoria
AND p.idmodelo = m.idmodelo
AND p.idcategoria = '".$fila_usb['idcategoria']."'";
$rs_resultado_cat_productos = mysql_query($resultado_cat_productos) or die(mysql_error());
Código PHP:
<table width="792" border="0" cellspacing="0" cellpadding="0">
<tr>
<td id="img_categorias"><div id="titulo_categorias"> <?=$fila_usb['nombre_categoria']; ?></div></td>
</tr>
<tr>
<td height="15"> </td>
</tr>
<tr>
<td>
<!--CONTENIDOS POR CATEGORIAS USB.-->
<table border = "0" cellpadding="0" cellspacing = "0">
<?php
$columnes = 5; # Número de columnas (variable)
for ($i=1; $fila_producto = mysql_fetch_array($rs_resultado_cat_productos); $i++) {
$resto = ($i % $columnes); // Número de celda del <tr> en que nos encontramos
if ($resto == 1) {
?>
<tr>
<?php
} # Si es la primera celda, abrimos <tr>
?>
<td width = "244">
<table style="width:153px;" border="0" cellpadding="0" cellspacing="0" id = "border_redon_producto">
<tr>
<td height="6"></td>
</tr>
<tr>
<td id = "titulo_codigo">
Cod.:
<?=$fila_producto['codigo_producto']; ?>
</td>
</tr>
<tr>
<td> </td>
</tr>
<tr>
<td>
<div align="center">
<a href="miusb_productos.php?categoria=<?=$fila_producto['idcategoria']; ?>">
<img src="productos/<?=$fila_producto['imagen_producto']; ?>" width="110" border="0" style="cursor:pointer;" title="haga clic para ver mas" class="loading" />
</a>
</div>
</td>
</tr>
<tr>
<td bgcolor="#E0E0DF"><a href="miusb_productos.php?categoria=<?=$fila_producto['idcategoria']; ?>"><img src="images/ver_detalle.jpg" width="151" height="14" border="0" /></a></td>
</tr>
<tr>
<td height="7"></td>
</tr>
</table>
</td>
<?php if ($resto == 0) { ?>
</tr>
<?php } # Si es la última celda, cerramos </tr>
}
if ($resto <> 0) { # Si el resultado no es múltiple de $columnes acabamos de rellenar los huecos
$ajust = $columnes - $resto; # Número de huecos necesarios
for ($j = 2; $j < $ajust; $j++) {
?>
<tr>
<td> </td>
<?php } ?>
</tr>
<?php
} # Cerramos la última línea
?>
</table>
</td>
</tr>
<tr>
<td height="15"></td>
</tr>
</table>
<?php
$i++;
}
?>
Código PHP:
$registros = 10;
if (!$pagina) {
$inicio = 0;
$pagina = 1;
}else{
$inicio = ($pagina - 1) * $registros;
}
$sql_ver_producto = "SELECT p. * , c. * , m. * FROM miusb_productos p, miusb_categorias c, miusb_modelos m
WHERE p.idcategoria = c.idcategoria
AND p.idmodelo = m.idmodelo
AND p.idcategoria = '".$_GET['categoria']."'
ORDER BY p.idcategoria DESC";
$rpta_ver_producto = mysql_query($sql_ver_producto) or die(mysql_error());
$total_registros = mysql_num_rows($rpta_ver_producto);
$resultado_productos = "SELECT p. * , c. * , m. * FROM miusb_productos p, miusb_categorias c, miusb_modelos m
WHERE p.idcategoria = c.idcategoria
AND p.idmodelo = m.idmodelo
AND p.idcategoria = '".$_GET['categoria']."'
ORDER BY p.idcategoria DESC
LIMIT $inicio, $registros";
$rs_resultado_productos = mysql_query($resultado_productos) or die(mysql_error());
$filas_productos = mysql_num_rows($rs_resultado_productos);
$total_paginas = ceil($total_registros / $registros);