Ir para conteúdo

Arquivado

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

jefersonfl

Agrupar dados usando array e foreach

Recommended Posts

Olá, peço ajuda para chegar em um resultado que estou tentando há algum tempo e não consigo, me faltou conhecimento na área.

Estou tentando criar tipo uma mala direta, onde apareça em cada etiqueta os dados do fornecedor e todas as suas notas pendentes.

 

Na primeira tela eu seleciono notas pendentes de fornecedores em uma lista, usando array

<input type="checkbox" name="marcadas[]" value="<?php echo $nr_nota; ?>">

Na tela seguinte deveria aparecer as informações agrupadas por fornecedor e suas respectivas notas pendentes. Acontece que usando o foreach eu não consigo agrupar por fornecedor e manter as notas individuais, aparece uma etiqueta para cada nota, repetindo etiquetas para um mesmo fornecedor. Segue código da segunda tela:

 

      foreach ($_POST['marcadas'] as $nr_nota_pendente)

   {
      $sql = mysql_query("SELECT e.nr_nota, e.id_fornec_nota, f.razao_social, f.id_fornec
      FROM notas AS e
      JOIN fornecedor AS f ON f.id_fornec = e.id_fornec_nota
      WHERE nr_nota = '$nr_nota_pendente'
      GROUP BY f.razao_social");
                while ($nota = mysql_fetch_array($sql)) {
                       $razao_social = substr($nota[2],0,50);

				echo "FORNECEDOR: $razao_social <br>
				NOTAS PENDENTES: $nr_nota_pendente <br><br>";
    }

 

Por favor, alguém pode me dar uma luz de como conseguir o resultado que quero?

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Boa tarde, pessoal.
      Espero que todos estejam bem.
       
      Seguinte:
      Tenho a seguinte consulta:
       
      $usuarios= "SELECT * FROM usuarios";
      $query= mysqli_query($conexao, $usuarios) or die ("Usuário não encontrado");
      $usuario = mysqli_fetch_array($query);
       
      Quero pegar apenas o campo 'nome' da tabela 'usuarios' e colocar todos os resultados da seguinte forma:
       
      $nomes = array("Rafael", "João", "Maria", "Pedro", "Patricia", "Camila");
       
      Agradeço desde já.
      Abs
       
       
    • Por Willian Simione
      Boa Noite, alguem poderia me ajudar em uma situação, estou tetnando gravar os dados da tela abaixo, porem nao estou conseguindo montar o jeito certo pra ele gravar todos os dados de uma vez

    • Por Giovanird
      Tenho uma tabela com a coluna média (valor decimal) .
       
      cod | media | cod_sala 1 1,98 5 2 2,34 2 3 1,32 5 4 2,51 3 5 1,65 1 6 2,78 5 7 4,95 4 8 0,75 4 9 1,23 1 10 1,63 2 11 1,55 3 Preciso no select MYSQL ou dentro do foreach multiplicar os valores do campo média, de acordo com o fitro por cod_sala
      Exemplo pelo cod_sala: 5
      Sendo o resultdo final: 1,98 * 1,32 * 2,78 = 7,26

      Desde já agradeço!
    • Por mateus.andriollo
      Existe uma forma de fazer um IF na select e comparar com Array de dados?
       
      algo como
       
      Select if( in_array(idCliente,'1,2,3,4,5')=true,'Tem','Não') ) as cliente Não consigo usar inner ou where pois esse array é algo q tem varias regras...
       
      Precisava saber se existe uma função assim em MySQL
    • Por mateus.andriollo
      Existe uma forma de fazer um IF na select e comparar com Array de dados?
       
      algo como
       
      Select if( in_array(idCliente,'1,2,3,4,5')=true,'Tem','Não') ) as cliente Não consigo usar inner ou where pois esse resultado do array é algo q tem varias regras...
       
      Precisava saber se existe uma função assim em MySQL
×

Informação importante

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