Jump to content
Fórum Script Brasil
  • 0

[Resolvido] - Contar linhas da tabela com grupo de itens


dinohills

Question

Tarde

Seguinte pessoal tenho uma tabela que eu monto a partir de um select no banco.

Ai enquanto a tabela vai sendo gerada eu pegos os itens de Código igual e agrupo eles na tabela separando por uma linha em branco.

O problema é que eu só consigo contar e enumerar as linhas que tem item, as linhas que eu jogo em branco pra separar os grupos eu não to conseguindo enumerar de forma correta e sequencial.

Montei um exemplo pra ficar mais visível.

Ex:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title></title>
    </head>
    <body>
        <?php
        $itens = array("C-001", "C-001", "C-001", "C-002", "C-002", "C-003", "C-003", "C-003", "C-003", "C-004", "C-004");
        ?>
        <table border="1">
            <thead>
                <tr>
                    <th>Nº linha</th>
                    <th>Itens</th>
                </tr>
            </thead>
            <tbody>
                <?php
                $n_linha = 0;
                $cod_item = "";
                for ($i = 0; $i < count($itens); $i++) {
                    //não imprime na primeira linha
                    if ($n_linha == 0) {

                    } else {
                        if ($cod_item != $itens[$i]) {
                            echo "<tr>";
                            echo "<td colspan=\"2\">$n_linha</td>";
                            echo "</tr>";
                        }
                    }
                    echo "<tr style=\"background-color: #b9e8fe\">";
                    echo "<td>$n_linha</td>";
                    echo "<td>$itens[$i]</td>";
                    echo "</tr>";

                    $cod_item = $itens[$i];

                    $n_linha++;
                }
                ?>
            </tbody>
        </table>
    </body>
</html>

Foto do exemplo. Os números em vermelho são a sequencia que deveria mostrar

tabela_zps69f30ef3.png

Se alguém tiver uma dica pra ajudar posta ai ! VLW !!!

Edited by dinohills
Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Você tem que incrementar aqui também:

if ($cod_item != $itens[$i]) {
                            echo "<tr>";
                            echo "<td colspan=\"2\">$n_linha</td>";
                            echo "</tr>";
$n_linha++;
                        }

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152k
    • Total Posts
      651.5k
×
×
  • Create New...