Ir para conteúdo

POWERED BY:

Arquivado

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

Gabriel Fernandez

[Resolvido] Arrays e matriz

Recommended Posts

Por favor, vou colocar aqui quais resultados estou tendo no array e lá em baixo como deveria ficar mas não estou conseguindo fazer... se alguem puder dar a luz... agradeço

 

Array de agrupamento, é um array que vem de acordo com o que o usuário seleciona na tela para agrupar, vamos fazer de conta q ele selecionou modelo e coleção

mas ele pode selecionar outros e pode ser mais de dois agrupamentos por vez

 

$agrupamentos = array('0'=>'modelo', '1'=>'colecao');

Matriz que irei agrupar de acordo com o array acima.

 

$produtos = array(
                0 => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'G',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'FROZEN'
                ),
                1 => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'M',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'FROZEN'
                ),
                2 => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'P',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'FROZEN'
                ),
                3 => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'G',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'GIRLY'
                ),
                4 => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'M',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'GIRLY'
                ),
                5 => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'P',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'GIRLY'
                ),
                6 => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'G',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'MEIA',
                            'colecao' => 'LALALAL'
                ),
                7 => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'M',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'MEIA',
                            'colecao' => 'LALALAL'
                ),
                8 => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'P',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'MEIA',
                            'colecao' => 'LALALAL'
                ),
                9 => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'G',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'MEIA',
                            'colecao' => 'TETE'
                ),
                10 => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'M',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'MEIA',
                            'colecao' => 'TETE'
                ),
                11 => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'P',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'MEIA',
                            'colecao' => 'TETE'
                )
    );

como deveria ficar, repare que só vai mudar as chaves

 

$produtos = array(
    'CALCINHA' =>
            array(
                'FROZEN' => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'G',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'FROZEN'
                ),
                'FROZEN' => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'M',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'FROZEN'
                ),
                'FROZEN' => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'P',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'FROZEN'
                ),
                'GIRLY' => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'G',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'GIRLY'
                ),
                'GIRLY' => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'M',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'GIRLY'
                ),
                'GIRLY' => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'P',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'GIRLY'
                )
          ),
      'MEIA' =>
            array(
                'LALALAL' => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'G',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'MEIA',
                            'colecao' => 'LALALAL'
                ),
                'LALALAL' => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'M',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'MEIA',
                            'colecao' => 'LALALAL'
                ),
                'LALALAL' => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'P',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'MEIA',
                            'colecao' => 'LALALAL'
                ),
                'TETE' => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'G',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'MEIA',
                            'colecao' => 'TETE'
                ),
                'TETE' => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'M',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'MEIA',
                            'colecao' => 'TETE'
                ),
                'TETE' => array(
                            'produto' => 'CALCINHA STRING (7793)',
                            'cor' => 'ROSA',
                            'tamanho' => 'P',
                            'ref_fornecedor' => 7793,
                            'quantidade' => 6.000,
                            'custo' => 8.490,
                            'venda' => 29.9000000000000000,
                            'total' => 50.940000,
                            'modelo' => 'MEIA',
                            'colecao' => 'TETE'
                )
          )
    );

Com esse resultado poderei montar uma tabela desse estilo

 

<table>
    <tr>
        <td> <h1>CALCINHA</h1> </td>
    </tr>
    <tr>
        <td> <h2>FROZEN</h2> </td>
    </tr>
    <tr>
        <td>(aqui vem os dado do produto que é FROZEN e CALCINHA) </td>
    </tr>
    <tr>
        <td> <h2>GIRLY</h2> </td>
    </tr>
    <tr>
        <td>(aqui vem os dado do produto que é GIRLY e CALCINHA) </td>
    </tr>
    <tr>
        <td> <h1>MEIA</h1> </td>
    </tr>
    <tr>
        <td> <h2>LALALAL</h2> </td>
    </tr>
    <tr>
        <td>(aqui vem os dado do produto que é LALALAL e MEIA) </td>
    </tr>
    <tr>
        <td> <h2>TETE</h2> </td>
    </tr>
    <tr>
        <td>(aqui vem os dado do produto que é TETE e MEIA) </td>
    </tr>
</table>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não importa exatamente de onde vêm esse array matias. Array é array :P

 

Não testei pois estou com servidor local desabilitado aqui, mas veja se é isso que quer:

 

$novo = array();

foreach( $produtos as $v1 ) {
   foreach( $v1 as $v2 ) {
       $categoria = explode( ' ', $v2['produto'] ); // Obtemos a "categoria" (primeira palavra de 'produto'

       $novo[ $categoria[ 0 ] ][ $v2[ colecao ] ] = $v2;
   }
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não importa exatamente de onde vêm esse array matias. Array é array :P

 

Não testei pois estou com servidor local desabilitado aqui, mas veja se é isso que quer:

 

$novo = array();

foreach( $produtos as $v1 ) {
   foreach( $v1 as $v2 ) {
       $categoria = explode( ' ', $v2['produto'] ); // Obtemos a "categoria" (primeira palavra de 'produto'

       $novo[ $categoria[ 0 ] ][ $v2[ colecao ] ] = $v2;
   }
}

 

Você chamou $v2[ colecao ] mas em vez de coleção pode vir outro agrupamento, você fez algo estático pois só vai funcionar se vir coleção

$agrupamentos = array('0'=>'modelo', '1'=>'colecao');

Pode ser que venha assim, só modelo!

 

$agrupamentos = array('0'=>'modelo');

Mas como você botou coleção no codigo ele vai chamar algo que não existe, ou seja você tem que fazer iteração com o array de agrupamentos e dentro dele fazer iteração com a matriz de produtos

 

Amigo, não entendi direito... Isto vem de um formulário? Como é criado este array?

 

Isso vem do banco de dados, o cara tem um formulario para selecionar quais agrupamentos ele quer, no caso ele selecionou modelo e coleção que são dois campos que na matriz de produto

$agrupamentos = array('0'=>'modelo', '1'=>'colecao');

E se você reparar em cada produto vem o item de agrupamento

olhe no final do array o modelo e a colecao

0 => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'G',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'FROZEN'
                ),

 

Eu já estou conseguindo fazer quando vem 1 agrupamento ou 2, estou tendo que fazer uma logica para cada quantidade de agrupamento que vir, isso não me agrada mas vou postar aqui

 

foreach($agrupamentos as $posicao => $agrupamento)
            {
                if($posicao == 0)
                {
                    foreach($produtos as $key => $value)
                    {                        
                        $arrayTitulos[$value[$agrupamento]] = "";
                        $arrayResumo[$value[$agrupamento]][] = $value;
                    }
                    
                }
                if($posicao == 1)
                {
                    unset($arrayResumo);
                    foreach($produtos as $key => $value)
                    {
                        foreach($arrayTitulos as $key2 => $value2)
                        {                           
                            if($value[$agrupAnterior] == $key2)
                            {
                                $arrayTitulos[$key2][$value[$agrupamento]] = "";                                
                                $arrayResumo[$key2][$value[$agrupamento]][] = $value;
                            }
                        }
                    }                    
                }
                $agrupAnterior = $agrupamento;                                
            }

Ai você da um print_r no $arrayResumo ai ele ta retornando um array do tipo

 

$produtos = array(
    'CALCINHA' =>
            array(
                'FROZEN' => array(
                            'produto' => 'CALCINHA FIO DENTAL (7796)',
                            'cor' => 'PINK',
                            'tamanho' => 'G',
                            'ref_fornecedor' => 7796,
                            'quantidade' => 6.000,
                            'custo' => 9.010,
                            'venda' => 31.9000000000000000,
                            'total' => 54.060000,
                            'modelo' => 'CALCINHA',
                            'colecao' => 'FROZEN'
                )

Que acredito que seja a organização perfeita para eu gerar aquela tabela... pois se você reparar frozen que é o segundo agrupamento ta dentro de calcinha que é o primeiro agrupamento e se você ver dentro do array do produto, ele tem modelo calcinha e coleção frozen

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso vem do banco de dados

Se vem do banco de dados, o ideal é montar a consulta já na forma que você precisa, ordenado por produto e depois por tipo (sei lá o que é frozen).

 

É difícil de explicar, mas é muito mais fácil de fazer assim.

 

Por exemplo, você tem os dados na consulta, exibindo em cada linha assim...

 

'CALCINHA' - 'FROZEN' - 'CALCINHA FIO DENTAL (7796)' - 'PINK' - 'G' - 7796 - 6.000 - 9.010 - 31.9000000000000000 - 54.060000

Daí você faz dentro do while, algo assim...

 

$modelo = '';
$categoria = '';
while($row = mysql_fetch_assoc($sql))
{
     if ($row['modelo'] != $modelo)
     {
         echo '<tr>
                 <td> <h1>'.$row['modelo'].'</h1> </td>
              </tr>';
         $modelo = $row['modelo'];
     }
     if ($row['categoria'] != $categoria)
     {
         echo '<tr>
                 <td> <h1>'.$row['categoria'].'</h1> </td>
              </tr>';
         $categoria = $row['categoria'];
     }

}

o que vai acontecer... Ele só vai imprimir este 'titulo' se for diferente da outra vez, ou seja, todos que tiverem o mesmo modelo vão ficar dentro do mesmo título, e o mesmo vale para as categorias.

 

Não importa exatamente de onde vêm esse array matias. Array é array

Quando eu perguntei de onde vinha o array era para entender exatamente isto. Sendo do banco de dados, como eu imaginei que fosse, assim é a melhor forma.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não importa exatamente de onde vêm esse array matias. Array é array

Quando eu perguntei de onde vinha o array era para entender exatamente isto. Sendo do banco de dados, como eu imaginei que fosse, assim é a melhor forma.

 

Carlos Eduardo

 

Concordo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso vem do banco de dados

Se vem do banco de dados, o ideal é montar a consulta já na forma que você precisa, ordenado por produto e depois por tipo (sei lá o que é frozen).

 

É difícil de explicar, mas é muito mais fácil de fazer assim.

 

Por exemplo, você tem os dados na consulta, exibindo em cada linha assim...

 

'CALCINHA' - 'FROZEN' - 'CALCINHA FIO DENTAL (7796)' - 'PINK' - 'G' - 7796 - 6.000 - 9.010 - 31.9000000000000000 - 54.060000

Daí você faz dentro do while, algo assim...

 

$modelo = '';
$categoria = '';
while($row = mysql_fetch_assoc($sql))
{
     if ($row['modelo'] != $modelo)
     {
         echo '<tr>
                 <td> <h1>'.$row['modelo'].'</h1> </td>
              </tr>';
         $modelo = $row['modelo'];
     }
     if ($row['categoria'] != $categoria)
     {
         echo '<tr>
                 <td> <h1>'.$row['categoria'].'</h1> </td>
              </tr>';
         $categoria = $row['categoria'];
     }

}

o que vai acontecer... Ele só vai imprimir este 'titulo' se for diferente da outra vez, ou seja, todos que tiverem o mesmo modelo vão ficar dentro do mesmo título, e o mesmo vale para as categorias.

 

Não importa exatamente de onde vêm esse array matias. Array é array

Quando eu perguntei de onde vinha o array era para entender exatamente isto. Sendo do banco de dados, como eu imaginei que fosse, assim é a melhor forma.

 

Carlos Eduardo

 

Mas a parte que você não entendeu é que o nome modelo e categoria que você colocou nesse exemplo de solução ai não é fixo, isso ai depende do que o cara seleciona na tela, eu não posso colocar no código coleção e modelo... e se o cara selecionou grife? eu tenho que fazer iteração com os agrupamentos.. lembrando que, o que cara selecionou vem em array em ordem qual agrupamento você deve fazer

 

$agrupamentos = array('0'=>'modelo', '1'=>'colecao');

Simplesmente o problema não tem solução aparente, o que dei sorte é que no máximo são 8 agrupamentos a serem selecionados

 

mudei o nome dos arrays iniciais só por organização

$strArrays = $agrupamentos

$result = $produtos

 

Então resolvi assim

 

foreach($strArrays as $posicao => $agrupamento)
            {
                if($posicao == 0)
                {
                    foreach($result as $key => $value)
                    {                        
                        $arrayTitulos[$value[$agrupamento]] = "";
                        $arrayResumo[$value[$agrupamento]][] = $value;
                    }
                    $agrup0 = $agrupamento;
                    
                }
                if($posicao == 1)
                {
                    unset($arrayResumo);
                    foreach($result as $key => $value)
                    {
                        foreach($arrayTitulos as $key2 => $value2)
                        {                           
                            if($value[$agrup0] == $key2)
                            {
                                $arrayTitulos[$key2][$value[$agrupamento]] = "";                                
                                $arrayResumo[$key2][$value[$agrupamento]][] = $value;
                            }
                        }
                    }
                    $agrup1 = $agrupamento;
                }
                if($posicao == 2)
                {
                    unset($arrayResumo);
                    foreach($result as $key => $value)
                    {
                        foreach($arrayTitulos as $key2 => $value2)
                        {                            
                            foreach($value2 as $key3 => $value3)
                            {
                                if($value[$agrup1] == $key3 && $value[$agrup0] == $key2)
                                {                                    
                                    $arrayTitulos[$key2][$key3][$value[$agrupamento]] = "";
                                    $arrayResumo[$key2][$key3][$value[$agrupamento]][] = $value;
                                }
                            }                            
                        }
                    }
                    $agrup2 = $agrupamento;
                }
                if($posicao == 3)
                {
                    unset($arrayResumo);
                    foreach($result as $key => $value)
                    {                        
                        foreach($arrayTitulos as $key2 => $value2)
                        {                            
                            foreach($value2 as $key3 => $value3)
                            {                                
                                foreach($value3 as $key4 => $value4)
                                {                                    
                                    if($value[$agrup2] == $key4 && $value[$agrup1] == $key3 && $value[$agrup0] == $key2)
                                    {                                                                               
                                        $arrayTitulos[$key2][$key3][$key4][$value[$agrupamento]] = "";
                                        $arrayResumo[$key2][$key3][$key4][$value[$agrupamento]][] = $value;
                                    }
                                }                                
                            }
                        }
                    }
                    $agrup3 = $agrupamento;
                }
                if($posicao == 4)
                {
                    unset($arrayResumo);
                    foreach($result as $key => $value)
                    {
                        foreach($arrayTitulos as $key2 => $value2)
                        {
                            foreach($value2 as $key3 => $value3)
                            {
                                foreach($value3 as $key4 => $value4)
                                {
                                    foreach($value4 as $key5 => $value5)
                                    {
                                        if($value[$agrup3] == $key5 && $value[$agrup2] == $key4 && $value[$agrup1] == $key3 && $value[$agrup0] == $key2)
                                        {
                                            $arrayTitulos[$key2][$key3][$key4][$key5][$value[$agrupamento]] = "";
                                            $arrayResumo[$key2][$key3][$key4][$key5][$value[$agrupamento]][] = $value;
                                        }
                                    }
                                }
                            }
                        }
                    }
                    $agrup4 = $agrupamento;
                }
                if($posicao == 5)
                {
                    unset($arrayResumo);
                    foreach($result as $key => $value)
                    {
                        foreach($arrayTitulos as $key2 => $value2)
                        {
                            foreach($value2 as $key3 => $value3)
                            {
                                foreach($value3 as $key4 => $value4)
                                {
                                    foreach($value4 as $key5 => $value5)
                                    {
                                        foreach($value5 as $key6 => $value6)
                                        {
                                            if($value[$agrup4] == $key6 && $value[$agrup3] == $key5 && $value[$agrup2] == $key4 && $value[$agrup1] == $key3 && $value[$agrup0] == $key2)
                                            {
                                                $arrayTitulos[$key2][$key3][$key4][$key5][$key6][$value[$agrupamento]] = "";
                                                $arrayResumo[$key2][$key3][$key4][$key5][$key6][$value[$agrupamento]][] = $value;
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    $agrup5 = $agrupamento;
                }
                if($posicao == 6)
                {
                    unset($arrayResumo);
                    foreach($result as $key => $value)
                    {
                        foreach($arrayTitulos as $key2 => $value2)
                        {
                            foreach($value2 as $key3 => $value3)
                            {
                                foreach($value3 as $key4 => $value4)
                                {
                                    foreach($value4 as $key5 => $value5)
                                    {
                                        foreach($value5 as $key6 => $value6)
                                        {
                                            foreach($value6 as $key7 => $value7)
                                            {
                                                if($value[$agrup5] == $key7 && $value[$agrup4] == $key6 && $value[$agrup3] == $key5 && $value[$agrup2] == $key4 && $value[$agrup1] == $key3 && $value[$agrup0] == $key2)
                                                {
                                                    $arrayTitulos[$key2][$key3][$key4][$key5][$key6][$key7][$value[$agrupamento]] = "";
                                                    $arrayResumo[$key2][$key3][$key4][$key5][$key6][$key7][$value[$agrupamento]][] = $value;
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    $agrup6 = $agrupamento;
                }
                if($posicao == 7)
                {
                    unset($arrayResumo);
                    foreach($result as $key => $value)
                    {
                        foreach($arrayTitulos as $key2 => $value2)
                        {
                            foreach($value2 as $key3 => $value3)
                            {
                                foreach($value3 as $key4 => $value4)
                                {
                                    foreach($value4 as $key5 => $value5)
                                    {
                                        foreach($value5 as $key6 => $value6)
                                        {
                                            foreach($value6 as $key7 => $value7)
                                            {
                                                foreach($value7 as $key8 => $value8)
                                                {
                                                    if($value[$agrup6] == $key8 && $value[$agrup5] == $key7 && $value[$agrup4] == $key6 && $value[$agrup3] == $key5 && $value[$agrup2] == $key4 && $value[$agrup1] == $key3 && $value[$agrup0] == $key2)
                                                    {
                                                        $arrayTitulos[$key2][$key3][$key4][$key5][$key6][$key7][$key8][$value[$agrupamento]] = "";
                                                        $arrayResumo[$key2][$key3][$key4][$key5][$key6][$key7][$key8][$value[$agrupamento]][] = $value;
                                                    }
                                                }                                                
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                    $agrup7 = $agrupamento;
                }                                                
            }            
            $strHtmlTabela = '<table id="resumoDoPedido" cellspacing="0" cellpadding="0" border="1">';
            foreach($arrayResumo as $key => $value)
            {                
                $strHtmlTabela .= '<tr>';
                $strHtmlTabela .= '<td colspan="8" id="key">'.$key.'</td>';
                $strHtmlTabela .= '</tr>';
                
                if($value[0] != NULL) // SE TIVER APENAS 1 SELECIONADO
                {    
                    $strHtmlTabela .= '<tr>';
                    $strHtmlTabela .= '<td>produto</td>';
                    $strHtmlTabela .= '<td>ref_fornecedor</td>';
                    $strHtmlTabela .= '<td>cor</td>';
                    $strHtmlTabela .= '<td>tamanho</td>';
                    $strHtmlTabela .= '<td>quantidade</td>';
                    $strHtmlTabela .= '<td>custo</td>';
                    $strHtmlTabela .= '<td>venda</td>';
                    $strHtmlTabela .= '<td>total</td>';
                    $strHtmlTabela .= '</tr>';
                }
                
                foreach($value as $key2 => $value2)
                {
                    if($value[0] == NULL) // SE TIVER 2 SELECIONADOS OU MAIS
                    {
                        $strHtmlTabela .= '<tr>';
                        $strHtmlTabela .= '<td colspan="8" id="key2">'.$key2.'</td>';
                        $strHtmlTabela .= '</tr>';
                        if($value2[0] != NULL) // SE TIVER 2 SELECIONADOS APENAS
                        {
                            $strHtmlTabela .= '<tr>';
                            $strHtmlTabela .= '<td>produto</td>';
                            $strHtmlTabela .= '<td>ref_fornecedor</td>';
                            $strHtmlTabela .= '<td>cor</td>';
                            $strHtmlTabela .= '<td>tamanho</td>';
                            $strHtmlTabela .= '<td>quantidade</td>';
                            $strHtmlTabela .= '<td>custo</td>';
                            $strHtmlTabela .= '<td>venda</td>';
                            $strHtmlTabela .= '<td>total</td>';
                            $strHtmlTabela .= '</tr>';
                        }
                        foreach($value2 as $key3 => $value3)
                        {
                            if($value2[0] == NULL) // SE TIVER 3 SELECIONADOS  OU MAIS
                            {
                                $strHtmlTabela .= '<tr>';
                                $strHtmlTabela .= '<td colspan="8" id="key3">'.$key3.'</td>';
                                $strHtmlTabela .= '</tr>';
                                if($value3[0] != NULL) // SE TIVER 3 SELECIONADOS APENAS
                                {
                                    $strHtmlTabela .= '<tr>';
                                    $strHtmlTabela .= '<td>produto</td>';
                                    $strHtmlTabela .= '<td>ref_fornecedor</td>';
                                    $strHtmlTabela .= '<td>cor</td>';
                                    $strHtmlTabela .= '<td>tamanho</td>';
                                    $strHtmlTabela .= '<td>quantidade</td>';
                                    $strHtmlTabela .= '<td>custo</td>';
                                    $strHtmlTabela .= '<td>venda</td>';
                                    $strHtmlTabela .= '<td>total</td>';
                                    $strHtmlTabela .= '</tr>';
                                }
                                foreach($value3 as $key4 => $value4)
                                {
                                    if($value3[0] == NULL) // SE TIVER 4 SELECIONADOS OU MAIS
                                    {
                                        $strHtmlTabela .= '<tr>';
                                        $strHtmlTabela .= '<td colspan="8" id="key4">'.$key4.'</td>';
                                        $strHtmlTabela .= '</tr>';
                                        if($value4[0] != NULL) // SE TIVER 4 SELECIONADOS APENAS
                                        {
                                            $strHtmlTabela .= '<tr>';
                                            $strHtmlTabela .= '<td>produto</td>';
                                            $strHtmlTabela .= '<td>ref_fornecedor</td>';
                                            $strHtmlTabela .= '<td>cor</td>';
                                            $strHtmlTabela .= '<td>tamanho</td>';
                                            $strHtmlTabela .= '<td>quantidade</td>';
                                            $strHtmlTabela .= '<td>custo</td>';
                                            $strHtmlTabela .= '<td>venda</td>';
                                            $strHtmlTabela .= '<td>total</td>';
                                            $strHtmlTabela .= '</tr>';
                                        }
                                        foreach($value4 as $key5 => $value5)
                                        {
                                            if($value4[0] == NULL) // SE TIVER 5 SELECIONADOS OU MAIS
                                            {
                                                $strHtmlTabela .= '<tr>';
                                                $strHtmlTabela .= '<td colspan="8" id="key5">'.$key5.'</td>';
                                                $strHtmlTabela .= '</tr>';
                                                if($value5[0] != NULL) // SE TIVER 5 SELECIONADOS APENAS
                                                {
                                                    $strHtmlTabela .= '<tr>';
                                                    $strHtmlTabela .= '<td>produto</td>';
                                                    $strHtmlTabela .= '<td>ref_fornecedor</td>';
                                                    $strHtmlTabela .= '<td>cor</td>';
                                                    $strHtmlTabela .= '<td>tamanho</td>';
                                                    $strHtmlTabela .= '<td>quantidade</td>';
                                                    $strHtmlTabela .= '<td>custo</td>';
                                                    $strHtmlTabela .= '<td>venda</td>';
                                                    $strHtmlTabela .= '<td>total</td>';
                                                    $strHtmlTabela .= '</tr>';
                                                }
                                                foreach($value5 as $key6 => $value6)
                                                {
                                                    if($value5[0] == NULL) // SE TIVER 6 SELECIONADOS OU MAIS
                                                    {
                                                        $strHtmlTabela .= '<tr>';
                                                        $strHtmlTabela .= '<td colspan="8" id="key6">'.$key6.'</td>';
                                                        $strHtmlTabela .= '</tr>';
                                                        if($value6[0] != NULL) // SE TIVER 6 SELECIONADOS APENAS
                                                        {
                                                            $strHtmlTabela .= '<tr>';
                                                            $strHtmlTabela .= '<td>produto</td>';
                                                            $strHtmlTabela .= '<td>ref_fornecedor</td>';
                                                            $strHtmlTabela .= '<td>cor</td>';
                                                            $strHtmlTabela .= '<td>tamanho</td>';
                                                            $strHtmlTabela .= '<td>quantidade</td>';
                                                            $strHtmlTabela .= '<td>custo</td>';
                                                            $strHtmlTabela .= '<td>venda</td>';
                                                            $strHtmlTabela .= '<td>total</td>';
                                                            $strHtmlTabela .= '</tr>';
                                                        }
                                                        foreach($value6 as $key7 => $value7)
                                                        {
                                                            if($value6[0] == NULL) // SE TIVER 7 SELECIONADOS OU MAIS
                                                            {
                                                                $strHtmlTabela .= '<tr>';
                                                                $strHtmlTabela .= '<td colspan="8" id="key7">'.$key7.'</td>';
                                                                $strHtmlTabela .= '</tr>';
                                                                if($value7[0] != NULL) // SE TIVER 7 SELECIONADOS APENAS
                                                                {
                                                                    $strHtmlTabela .= '<tr>';
                                                                    $strHtmlTabela .= '<td>produto</td>';
                                                                    $strHtmlTabela .= '<td>ref_fornecedor</td>';
                                                                    $strHtmlTabela .= '<td>cor</td>';
                                                                    $strHtmlTabela .= '<td>tamanho</td>';
                                                                    $strHtmlTabela .= '<td>quantidade</td>';
                                                                    $strHtmlTabela .= '<td>custo</td>';
                                                                    $strHtmlTabela .= '<td>venda</td>';
                                                                    $strHtmlTabela .= '<td>total</td>';
                                                                    $strHtmlTabela .= '</tr>';
                                                                }
                                                                foreach($value7 as $key8 => $value8)
                                                                {
                                                                    if($value7[0] == NULL) // SE TIVER 8 SELECIONADOS OU MAIS
                                                                    {
                                                                        $strHtmlTabela .= '<tr>';
                                                                        $strHtmlTabela .= '<td colspan="8" id="key8">'.$key8.'</td>';
                                                                        $strHtmlTabela .= '</tr>';
                                                                        if($value8[0] != NULL) // 8 SELECIONADOS E É O LIMITE
                                                                        {
                                                                            $strHtmlTabela .= '<tr>';
                                                                            $strHtmlTabela .= '<td>produto</td>';
                                                                            $strHtmlTabela .= '<td>ref_fornecedor</td>';
                                                                            $strHtmlTabela .= '<td>cor</td>';
                                                                            $strHtmlTabela .= '<td>tamanho</td>';
                                                                            $strHtmlTabela .= '<td>quantidade</td>';
                                                                            $strHtmlTabela .= '<td>custo</td>';
                                                                            $strHtmlTabela .= '<td>venda</td>';
                                                                            $strHtmlTabela .= '<td>total</td>';
                                                                            $strHtmlTabela .= '</tr>';
                                                                        }
                                                                        foreach($value8 as $key9 => $value9)
                                                                        {
                                                                            $strHtmlTabela .= '<tr class="produtosResumo">';
                                                                            $strHtmlTabela .= '<td>'.$value9["produto"].'</td>';
                                                                            $strHtmlTabela .= '<td>'.$value9["ref_fornecedor"].'</td>';
                                                                            $strHtmlTabela .= '<td>'.$value9["cor"].'</td>';
                                                                            $strHtmlTabela .= '<td>'.$value9["tamanho"].'</td>';
                                                                            $strHtmlTabela .= '<td>'.$value9["quantidade"].'</td>';
                                                                            $strHtmlTabela .= '<td>'.$value9["custo"].'</td>';
                                                                            $strHtmlTabela .= '<td>'.$value9["venda"].'</td>';
                                                                            $strHtmlTabela .= '<td>'.$value9["total"].'</td>';
                                                                            $strHtmlTabela .= '</tr>';
                                                                        }
                                                                    }
                                                                    else
                                                                    {
                                                                        $strHtmlTabela .= '<tr class="produtosResumo">';
                                                                        $strHtmlTabela .= '<td>'.$value8["produto"].'</td>';
                                                                        $strHtmlTabela .= '<td>'.$value8["ref_fornecedor"].'</td>';
                                                                        $strHtmlTabela .= '<td>'.$value8["cor"].'</td>';
                                                                        $strHtmlTabela .= '<td>'.$value8["tamanho"].'</td>';
                                                                        $strHtmlTabela .= '<td>'.$value8["quantidade"].'</td>';
                                                                        $strHtmlTabela .= '<td>'.$value8["custo"].'</td>';
                                                                        $strHtmlTabela .= '<td>'.$value8["venda"].'</td>';
                                                                        $strHtmlTabela .= '<td>'.$value8["total"].'</td>';
                                                                        $strHtmlTabela .= '</tr>';
                                                                    }
                                                                }
                                                            }
                                                            else
                                                            {
                                                                $strHtmlTabela .= '<tr class="produtosResumo">';
                                                                $strHtmlTabela .= '<td>'.$value7["produto"].'</td>';
                                                                $strHtmlTabela .= '<td>'.$value7["ref_fornecedor"].'</td>';
                                                                $strHtmlTabela .= '<td>'.$value7["cor"].'</td>';
                                                                $strHtmlTabela .= '<td>'.$value7["tamanho"].'</td>';
                                                                $strHtmlTabela .= '<td>'.$value7["quantidade"].'</td>';
                                                                $strHtmlTabela .= '<td>'.$value7["custo"].'</td>';
                                                                $strHtmlTabela .= '<td>'.$value7["venda"].'</td>';
                                                                $strHtmlTabela .= '<td>'.$value7["total"].'</td>';
                                                                $strHtmlTabela .= '</tr>';
                                                            }
                                                        }
                                                    }
                                                    else
                                                    {
                                                        $strHtmlTabela .= '<tr class="produtosResumo">';
                                                        $strHtmlTabela .= '<td>'.$value6["produto"].'</td>';
                                                        $strHtmlTabela .= '<td>'.$value6["ref_fornecedor"].'</td>';
                                                        $strHtmlTabela .= '<td>'.$value6["cor"].'</td>';
                                                        $strHtmlTabela .= '<td>'.$value6["tamanho"].'</td>';
                                                        $strHtmlTabela .= '<td>'.$value6["quantidade"].'</td>';
                                                        $strHtmlTabela .= '<td>'.$value6["custo"].'</td>';
                                                        $strHtmlTabela .= '<td>'.$value6["venda"].'</td>';
                                                        $strHtmlTabela .= '<td>'.$value6["total"].'</td>';
                                                        $strHtmlTabela .= '</tr>';
                                                    }
                                                }
                                            }
                                            else
                                            {
                                                $strHtmlTabela .= '<tr class="produtosResumo">';
                                                $strHtmlTabela .= '<td>'.$value5["produto"].'</td>';
                                                $strHtmlTabela .= '<td>'.$value5["ref_fornecedor"].'</td>';
                                                $strHtmlTabela .= '<td>'.$value5["cor"].'</td>';
                                                $strHtmlTabela .= '<td>'.$value5["tamanho"].'</td>';
                                                $strHtmlTabela .= '<td>'.$value5["quantidade"].'</td>';
                                                $strHtmlTabela .= '<td>'.$value5["custo"].'</td>';
                                                $strHtmlTabela .= '<td>'.$value5["venda"].'</td>';
                                                $strHtmlTabela .= '<td>'.$value5["total"].'</td>';
                                                $strHtmlTabela .= '</tr>';
                                            }
                                        }
                                    }
                                    else // IMPRIMINDO ITENS DE 3 SELECIONADOS
                                    {
                                        $strHtmlTabela .= '<tr class="produtosResumo">';
                                        $strHtmlTabela .= '<td>'.$value4["produto"].'</td>';
                                        $strHtmlTabela .= '<td>'.$value4["ref_fornecedor"].'</td>';
                                        $strHtmlTabela .= '<td>'.$value4["cor"].'</td>';
                                        $strHtmlTabela .= '<td>'.$value4["tamanho"].'</td>';
                                        $strHtmlTabela .= '<td>'.$value4["quantidade"].'</td>';
                                        $strHtmlTabela .= '<td>'.$value4["custo"].'</td>';
                                        $strHtmlTabela .= '<td>'.$value4["venda"].'</td>';
                                        $strHtmlTabela .= '<td>'.$value4["total"].'</td>';
                                        $strHtmlTabela .= '</tr>';
                                    }
                                }
                            }
                            else //IMPRIMINDO ITENS DE 2 SELECIONADOS
                            {
                                $strHtmlTabela .= '<tr class="produtosResumo">';
                                $strHtmlTabela .= '<td>'.$value3["produto"].'</td>';
                                $strHtmlTabela .= '<td>'.$value3["ref_fornecedor"].'</td>';
                                $strHtmlTabela .= '<td>'.$value3["cor"].'</td>';
                                $strHtmlTabela .= '<td>'.$value3["tamanho"].'</td>';
                                $strHtmlTabela .= '<td>'.$value3["quantidade"].'</td>';
                                $strHtmlTabela .= '<td>'.$value3["custo"].'</td>';
                                $strHtmlTabela .= '<td>'.$value3["venda"].'</td>';
                                $strHtmlTabela .= '<td>'.$value3["total"].'</td>';
                                $strHtmlTabela .= '</tr>';
                            }
                        }
                    }
                    else // IMPRIMINDO ITENS DE 1 SELECIONADO
                    {
                        $strHtmlTabela .= '<tr class="produtosResumo">';
                        $strHtmlTabela .= '<td>'.$value2["produto"].'</td>';
                        $strHtmlTabela .= '<td>'.$value2["ref_fornecedor"].'</td>';
                        $strHtmlTabela .= '<td>'.$value2["cor"].'</td>';
                        $strHtmlTabela .= '<td>'.$value2["tamanho"].'</td>';
                        $strHtmlTabela .= '<td>'.$value2["quantidade"].'</td>';
                        $strHtmlTabela .= '<td>'.$value2["custo"].'</td>';
                        $strHtmlTabela .= '<td>'.$value2["venda"].'</td>';
                        $strHtmlTabela .= '<td>'.$value2["total"].'</td>';
                        $strHtmlTabela .= '</tr>';
                    }
                }
                   
            }

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.