Hola gente, tengo un programa hecho por mi que trae elementos de una base de datos pero está hecho de una forma muy estatica en la que si sigue asi, no podria expandirlo a futuro tal como tengo pensado, por lo cual, les voy a mostrar parte del codigo que actualmente está escrito tal cual y segun veo podria ser mucho mas dinamico y en muchas menos lineas de codigo usando solo un while y una tabla nueva en mysql que es el motor que uso para traer elementos.
esto es lo que tengo actualmente:
Código PHP:
<div id="01">
<?php
$result1 = mysqli_query($link, "SELECT * FROM products WHERE productCategoria = '1' AND habilitado = '1'");
while ($fila1 = mysqli_fetch_array($result1)) {
mostrarDatos1($fila1);
}
mysqli_free_result($result1);
?>
</div>
<div id="02">
<?php
$result1 = mysqli_query($link, "SELECT * FROM products WHERE productCategoria = '2' AND habilitado = '1'");
while ($fila1 = mysqli_fetch_array($result1)) {
mostrarDatos1($fila1);
}
mysqli_free_result($result1);
?>
</div>
como verán lo único que cambia entre un div y otro es el nombre del div que cambia entre 01, 02, 03, 04 y asi hasta 12... y la consulta de la base de datos que tambien cambia en paralelo "productCategoria = '1', "productCategoria = '2', "productCategoria = '3' etc y asi hasta 12 tambien
entonces hice una tabla llamada
categorias con varios campos, cuyo campo ID es el que coincide con estos números que actualmente llegan hasta el 12.
Ahora vamos al while que hice para reemplazar todo eso, que es el motivo de mi problema, no me esta funcionando el siguiente codigo:
Código PHP:
<?php
$result = mysqli_query($conn, "SELECT ID FROM categorias");
?>
<?php
while ($fila = mysqli_fetch_array($result)) {
$id = $fila['ID'];
?>
<div id="<?php echo $id; ?>">
<?php
$result1 = mysqli_query($link, "SELECT * FROM products WHERE productCategoria = $id AND habilitado = '1'");
while ($fila1 = mysqli_fetch_array($result1)) {
mostrarDatos1($fila1);
}
mysqli_free_result($result1);
?>
</div>
<?php }; ?>
segun yo tengo algo mal en la consulta pero no me estoy dando cuenta que... si me pueden dar una mano, sería de gran ayuda, muchas gracias.