Estoy un poco perdido con el uso del foreach con una consulta mysql.
En una tabla, tengo marcas, y en otra productos.
Yo quisiera imprimir en pantalla todos los productos de cada marca, debajo de las mismas. Es decir:
Marca A
prod 1
prod 2
prod 3
Marca B
prod 1
prod 2
y así. No estoy muy seguro de cómo hacerlo, pero lo intenté de varias maneras... esta última me parece la más aproximada, pero no me da ningún resultado.
Código:
<?php
include ("conexion.php");
$conexion = mysql_connect ($host, $user, $pass);
mysql_select_db ($base, $conexion);
$sql="SELECT * from matermec_marcas ORDER BY nombre ASC";
$result = mysql_query($sql, $conexion);
while ($row=mysql_fetch_array($result))
{
$id=$row['id'];
$marca= $row['nombre'];
$marcas= array ($marca);
}
foreach($marcas as $marca)
{
echo "$marca<br/>";
$sql2= "select * from matermec_productos where id_marca='$ids'";
$result2 = mysql_query($sql2, $conexion);
while ($row2=mysql_fetch_array($result2))
{
echo $row2['nombre'];
}
?>
La última vez que hice algo parecido fue hace mucho, pero era para listar todos los productos de la A a la Z, y esto sí me funcionó
Código:
foreach( range( 'a', 'z' ) as $letra )
{
?>
<div class="caja_por_letra">
<?
echo "<p style=\"font-size:25px;font-weight:bold;\"><a name=\"$letra\">$letra</a></p>";
$sql11= "select distinct nombre, sistema, id from productos where nombre like '$letra%'";
$result11 = mysql_query($sql11, $conexion);
if ($row = mysql_fetch_array($result11))
{
mysql_field_seek($result11,0);
do
{
?><a class="link_sistemas" href="productos.php?sistema=<? echo $row['sistema']; ?>&id=<? echo $row['id']; ?>"><? echo $row['nombre']; ?></a><br/><br/>
<? }
while ($row = mysql_fetch_array($result11));
}
?>
</div>
<?
}
?>
Pero no sé cómo meter la lista de marcas obtenidas de la primera consulta en el foreach.
Agradezco cualquier ayuda!
saludos.