Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/09/2010, 08:28
Avatar de arielcasanova
arielcasanova
 
Fecha de Ingreso: octubre-2004
Ubicación: Bahía Blanca - Argentina
Mensajes: 332
Antigüedad: 20 años, 3 meses
Puntos: 1
foreach y consulta mysql

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.
__________________
Ariel Casanova
diseño y desarrollo web estratégico
www.emporia.com.ar