Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Inter4u

Criando Array Multidimensional

Recommended Posts

Pessoal, seguinte, preciso fazer um loop aninhado no smarty, até aí tudo blza, mas eu preciso gerar um array multidimensional pra isso, aí que começam os problemas.

 

Como vou fazer isso pois tenho que pesquisar em duas consultas ex.

 

Consulta 1:

<?php
$sql = mysql_query("SELECT id, nome FROM cliente");

while($rs = mysql_fetch_assoc($sql)){
	$result[] = $rs;
}

print_r($result); 
?>

Isso vai gerar um array mais ou menos assim:

 

Array
(
	[0] => Array
		(
			[id] => 1
			[nome] => Joao
		)

	[1] => Array
		(
			[id] => 2
			[nome] => Maria
		)

)

Tudo blza, mas n quero array simples, quero multidimensional, quero os dados de outra tabela que informam as compras deles

 

Consulta 2:

<?php
$sql = mysql_query("SELECT id, nome FROM cliente");

while($rs = mysql_fetch_assoc($sql)){
	$result[] = $rs;
	$sql2 = mysql_query("SELECT id_compra, id_cliente, compra FROM compras WHERE id_cliente=".$rs['id']));
				
	while($rs2 = mysql_fetch_assoc($sql2)){
		$result[] = $rs2;

	}					

}

print_r($result);
print_r($result2); 
?>

Isso vai gerar 2 arrays mais ou menos assim:

 

Array
(
	[0] => Array
		(
			[id] => 1
			[nome] => Joao
		)

	[1] => Array
		(
			[id] => 2
			[nome] => Maria
		)

)

Array
(
	[0] => Array
		(
			[id_compra] => 1
			[id_cliente] => 1
			[compra] => Garfo
		)

	[1] => Array
		(
			[id_compra] => 2
			[id_cliente] => 1
			[compra] => Facao
		)

	[2] => Array
		(
			[id_compra] => 3
			[id_cliente] => 2
			[compra] => Garfo
		)

	[3] => Array
		(
			[id_compra] => 4
			[id_cliente] => 2
			[compra] => Faca
		)

)

Deu pra entender, mas eu n quero 2 arrays separados, quero 1 só, multidimensional,

quando eu listar, quero que as compras apareçam como array de cada array cliente.

 

Quem poder me ajudar, pois preciso muito, isso é só a logica da coisa, tentei simplificar bastante

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php

$sql = mysql_query("SELECT id, nome FROM cliente");

 

while($rs = mysql_fetch_assoc($sql)){

$sql2 = mysql_query("SELECT id_compra, id_cliente, compra FROM compras WHERE id_cliente=".$rs['id']));

 

$rs['compras'] = array();

while($rs2 = mysql_fetch_assoc($sql2)){

$rs['compras'][] = $rs2;

 

}

 

$result[] = $rs;

 

}

 

print_r($result);

 

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigão, te amo!!!

 

Tem um tempão que to tentando fazer isso, sabia que seria simples, mas quando começa a mecher d+ a gente indoida.

 

 

Brigadão mesmo, funcionou do jeitinho que eu queria, vou só adaptá-lo no que eu quero!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.