Ir para conteúdo

POWERED BY:

Arquivado

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

Vanessa Olimpio

LOOP dentro da tabela PHP

Recommended Posts

*************LOOP dentro da tabela PHP*********************

 

Estou tentando criar um relatório de notas de alunos utilizando PHP, o fato é que criei uma tabela para que listasse as notas vertical dentro de um loop, porém pra cada aluno é gerado uma tabela, não estou conseguindo tabular o resultado lado a lado . Preciso também que a cada vez que mude o instrutor repita o cabeçalho, ou seja a cada 8 linhas, repita o cabeçalho novamente...


      

Segue o código completo:

    <?php include_once "con_odbc.php" ?>
    <div class="hidden-print"><b style=color:#ff0000><h4>Selecione o curso</h4>
    </b>   <form method="get" >
    <select name="data" id="data">

    <?php            
            
    $tal=0;
    $total =0;
    $res=0;
    $x=0;

    $sqlquery=("SELECT apde.CadCrs.idCadCrs,
    apde.CadCrs.Abrev as Data,
    apde.CadCrs.Per,
    apde.CadCrs.DtIni,
    apde.CadCrs.DtFin,
    apde.CadCrs.Flag
    FROM apde.CadCrs");
    $res = odbc_exec($connect, $sqlquery); 

    while ($dados =odbc_fetch_array($res)) {
    echo("<option value='".$dados['Data']."'>".$dados['Data']."</option>");
    }
    ?>
    </select>
        </tr>
        <tr>
       </tr>
    </table>
    <td> <input type="submit" name="OK" value="Mostrar"><td><a class="btn btn-
    default ewExportLink ewPrint" onclick="window.print();" title=""  >
    <span  class="icon-print ewIcon"></a></div><br>
    <bgcolor='#FFFFCC'><div class="hidden-print"><a href="#abaixo" name="topo">
    <input type='button'   value="IR PARA O FIM"></a></div>

    <div class="modal-content" width="600px">
    <div class="modal-content" >
    <div class="modal-header">
    <span id=layer1 class=a1></span>
    <span id=layer1 class=a1></span>
    </td>
    </tr>
    <tr>

    <br>


     </form>


     <br>

     <table width="950" border="0" align="center" cellpadding="2" cellspacing="2">
     <thead>
     <TR bgcolor="<?php echo ($ac_sw1++%2==0)?"#E4E4E4":"#FFFFFF"; ?>" onmouseout="this.style.backgroundColor=''" onmouseover="this.style.backgroundColor=''">
      <TD COLSPAN="40"><CENTER><b><font color="red" face="Times New Roman">Relatório de Notas </font> </b></CENTER></TD>
     </TR>
    <tr bgcolor="<?php echo ($ac_sw1++%2==0)?"#E4E4E4":"#FFFFFF"; ?>" onmouseout="this.style.backgroundColor=''" onmouseover="this.style.backgroundColor=''">
    <td>Id</td>
    <td>Curso</td>
    <td>Instrutor</td>
    <td>Critério</td>
    <td>1</td>
    <td>2</td>
    <td>3</td>
    <td>4</td>
    <td>5</td>
    <td>6</td>
    <td>7</td>
    <td>8</td>
    <td>9</td>
    <td>10</td>
    <td>11</td>
    <td>12</td>
    <td>13</td>
    <td>14</td>
    <td>15</td>
    <td>16</td>
    <td>17</td>
    <td>18</td>
    <td>19</td>
    <td>20</td>
    <td>21</td>
    <td>22</td>
    <td>23</td>
    <td>24</td>
    <td>25</td>
    <td>26</td>
    <td>27</td>
    <td>28</td>
    <td>29</td>
    <td>30</td>
    <td>31</td>
    <td>32</td>
    <td>33</td>
    <td>34</td>
    <td>35</td>
     <td>36</td>
    

     </tr></thead><tbody>

     <?php

    if(isset($_GET["OK"])){
     $Data= $_GET["data"];

    $contador = 0;

     $sqlquery=("SELECT Abrev, NomGue, TipAval, Aluno_1, Aluno_2, Aluno_3, Aluno_4, Aluno_5, Aluno_6, Aluno_7, Aluno_8, Aluno_9, Aluno_10, Aluno_11, Aluno_12, Aluno_13, Aluno_14, Aluno_15, Aluno_16, Aluno_17, Aluno_18, Aluno_19, Aluno_20, Aluno_21, Aluno_22, Aluno_23, Aluno_24, Aluno_25, Aluno_26, Aluno_27, Aluno_28, Aluno_29, Aluno_30, Aluno_31, Aluno_32, Aluno_33, Aluno_34, Aluno_35, Aluno_36 FROM APDE.apde.V_AvInstru  where Abrev = '$Data'  order by NomGue asc");
    $res = odbc_exec($connect, $sqlquery);

    while ($dados =odbc_fetch_array($res) )
    {

      if($contador == 8)
     {
    ?></tr>
    <br>
    <br>
    <br>
    <br>

      <table border="1" align="center" cellpadding="2" cellspacing="2">
        <tr bgcolor="<?php echo ($ac_sw1++%2==0)?"#E4E4E4":"#FFFFFF"; ?>" 
    onmouseout="this.style.backgroundColor=''" 
    onmouseover="this.style.backgroundColor=''">
            <td width="35" height="22" align="center">ID</td>

            <td width="500" align="center">Curso</td>
            
            <td width="500" align="center">
               Instrutor</td>
                   
                   
            <td width="400">Critério
            </td>
     <td  width="50">1</td>
     <td  width="50">2</td>
     <td width="50">3</td>
     <td width="50">4</td>
     <td width="50">5</td>
     <td width="50">6</td>
     <td width="50">7</td>
     <td width="50">8</td>
     <td width="50">9</td>
    <td width="50">10</td>
    <td width="50">11</td>
    <td width="50">12</td>
    <td width="50">13</td>
    <td width="50">14</td>
    <td width="50">15</td>
    <td width="50">16</td>
    <td width="50">17</td>
    <td width="50">18</td>
    <td width="50">19</td>
    <td width="50">20</td>
    <td width="50">21</td>
    <td width="50">22</td>
    <td width="50">23</td>
    <td width="50">24</td>
    <td width="50">25</td>
    <td width="50">26</td>
    <td width="50">27</td>
    <td width="50">28</td>
    <td width="50">29</td>
    <td width="50">30</td>
    <td width="50">31</td>
    <td width="50">32</td>
    <td width="50">33</td>
    <td width="50">34</td>
    <td width="50">35</td>
    <td width="50">36</td>
    

     </tr></thead><tr>

    <?php    
        $contador = 0;
    }


   
        <tr bgcolor="<?php echo ($ac_sw1++%2==0)?"#E4E4E4":"#FFFFFF"; ?>" onmouseout="this.style.backgroundColor=''" onmouseover="this.style.backgroundColor=''">
            <td width="35" height="22" align="center"><?php echo $contador; ?></td>

            <td width="500" align="center"><?php echo $dados['Abrev']; ?></td>
            
            <td width="133" align="center">
               <?php echo $dados['NomGue']; ?></td>
                    
            <td width="400"><?php echo $dados['TipAval']; ?>
            </td>
            
            <td width="50"><?php echo $dados['Aluno_1']; ?></td>        
            <td width="50"><?php echo $dados['Aluno_2']; ?></td>
            <td width="50"><?php echo $dados['Aluno_3']; ?></td>
            <td width="50"><?php echo $dados['Aluno_4']; ?></td>
            <td width="50"><?php echo $dados['Aluno_5']; ?></td>
            <td width="50"><?php echo $dados['Aluno_6']; ?></td>
            <td width="50"><?php echo $dados['Aluno_7']; ?></td>
            <td width="50"><?php echo $dados['Aluno_8']; ?></td>
            <td width="50"><?php echo $dados['Aluno_9']; ?></td>
            <td width="50"><?php echo $dados['Aluno_10']; ?></td>
            <td width="50"><?php echo $dados['Aluno_11']; ?></td>
            <td width="50"><?php echo $dados['Aluno_12']; ?></td>
            <td width="50"><?php echo $dados['Aluno_13']; ?></td>
            <td width="50"><?php echo $dados['Aluno_14']; ?></td>
            <td width="50"><?php echo $dados['Aluno_15']; ?></td>
            <td width="50"><?php echo $dados['Aluno_16']; ?></td>
            <td width="50"><?php echo $dados['Aluno_17']; ?></td>
            <td width="50"><?php echo $dados['Aluno_18']; ?></td>
            <td width="50"><?php echo $dados['Aluno_19']; ?></td>
            <td width="50"><?php echo $dados['Aluno_20']; ?></td>
            <td width="50"><?php echo $dados['Aluno_21']; ?></td>
            <td width="50"><?php echo $dados['Aluno_22']; ?></td>
            <td width="50"><?php echo $dados['Aluno_23']; ?></td>
            <td width="50"><?php echo $dados['Aluno_24']; ?></td>
            <td width="50"><?php echo $dados['Aluno_25']; ?></td>
            <td width="50"><?php echo $dados['Aluno_26']; ?></td>
            <td width="50"><?php echo $dados['Aluno_27']; ?></td>
            <td width="50"><?php echo $dados['Aluno_28']; ?></td>
            <td width="50"><?php echo $dados['Aluno_29']; ?></td>
            <td width="50"><?php echo $dados['Aluno_30']; ?></td>
            <td width="50"><?php echo $dados['Aluno_31']; ?></td>
            <td width="50"><?php echo $dados['Aluno_32']; ?></td>
            <td width="50"><?php echo $dados['Aluno_33']; ?></td>
            <td width="50"><?php echo $dados['Aluno_34']; ?></td>
            <td width="50"><?php echo $dados['Aluno_35']; ?></td>
            <td width="50"><?php echo $dados['Aluno_36']; ?></td>

            
            
            
            
            
            
        </tr>
   

    <?php
     $contador++;
    }} 
    ?>
    </table>  


 

Compartilhar este post


Link para o post
Compartilhar em outros sites

O primeiro passo é criar a tabela do jeito que você quer na "mão", sem utilizar o PHP, com o básico de informações. A partir disso, você começa a substituir pela repetição do PHP.

 

É difícil para nós explicarmos como você deve fazer a repetição se não sabemos como você quer que a tabela fique.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo vou tentar ser um pouco mais clara, preciso tabular a nota dos alunos em colunas, o problema é que ele cria uma nova tabela para cada aluna , ou seja se o professor tiver 30 avaliações de 30 alunos diferentes o resultado trara 30 tabelas ...Enviei uma foto para ficar mais claro o entendimento.

 

Capturar.PNG

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você conseguiu montar o HTML da tabela (sem loop) do jeito que ela deve ser exibida? Se sim, poste-o aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites
6 horas atrás, Gabriel Heming disse:

O primeiro passo é criar a tabela do jeito que você quer na "mão", sem utilizar o PHP, com o básico de informações. A partir disso, você começa a substituir pela repetição do PHP.

 

É difícil para nós explicarmos como você deve fazer a repetição se não sabemos como você quer que a tabela fique.

 

 

Obrigada pelo empenho!

Segue o código em HTML sem os loops ;

 

 

<html>
<head>
<title>Relatório de Notas</title>
</head>
<body>

<table width="950" border="0" align="center" cellpadding="2" cellspacing="2">
<thead>
<TR bgcolor="<?php echo ($ac_sw1++%2==0)?"#E4E4E4":"#FFFFFF"; ?>" onmouseout="this.style.backgroundColor=''" onmouseover="this.style.backgroundColor=''">
	<TD COLSPAN="40"><CENTER><b><font color="red" face="Times New Roman">Relatório de Notas </font> </b></CENTER></TD>
	</TR>
	<tr bgcolor="<?php echo ($ac_sw1++%2==0)?"#E4E4E4":"#FFFFFF"; ?>" onmouseout="this.style.backgroundColor=''" onmouseover="this.style.backgroundColor=''">

            <td width="35" height="22" align="center">ID</td>

            <td width="500" align="center">Curso</td>
			
            <td width="500" align="center">
               Instrutor</td>
                   
				   
            <td width="400">Critério
			</td>
	<td  width="50">1</td>
	<td  width="50">2</td>
	<td width="50">3</td>
	<td width="50">4</td>
	<td width="50">5</td>
	<td width="50">6</td>
	<td width="50">7</td>
	<td width="50">8</td>
	<td width="50">9</td>
	<td width="50">10</td>
	<td width="50">11</td>
	<td width="50">12</td>
	<td width="50">13</td>
	<td width="50">14</td>
	<td width="50">15</td>
	<td width="50">16</td>
	<td width="50">17</td>
	<td width="50">18</td>
	<td width="50">19</td>
	<td width="50">20</td>
	<td width="50">21</td>
	<td width="50">22</td>
	<td width="50">23</td>
	<td width="50">24</td>
	<td width="50">25</td>
	<td width="50">26</td>
	<td width="50">27</td>
	<td width="50">28</td>
	<td width="50">29</td>
	<td width="50">30</td>
	<td width="50">31</td>
	<td width="50">32</td>
	<td width="50">33</td>
	<td width="50">34</td>
	<td width="50">35</td>
	<td width="50">36</td>
	

	</tr></thead><tr>


   
        <tr bgcolor="<?php echo ($ac_sw1++%2==0)?"#E4E4E4":"#FFFFFF"; ?>" onmouseout="this.style.backgroundColor=''" onmouseover="this.style.backgroundColor=''">
            <td width="35" height="22" align="center"></td>

            <td width="500" align="center">Teste 1</td>
			
            <td width="133" align="center">
              Nome do Instrutor</td>
                    
            <td width="400">Avaliação
			</td>
			
	<td  width="50">1</td>
	<td  width="50">2</td>
	<td width="50">3</td>
	<td width="50">4</td>
	<td width="50">5</td>
	<td width="50">6</td>
	<td width="50">7</td>
	<td width="50">8</td>
	<td width="50">9</td>
	<td width="50">10</td>
	<td width="50">11</td>
	<td width="50">12</td>
	<td width="50">13</td>
	<td width="50">14</td>
	<td width="50">15</td>
	<td width="50">16</td>
	<td width="50">17</td>
	<td width="50">18</td>
	<td width="50">19</td>
	<td width="50">20</td>
	<td width="50">21</td>
	<td width="50">22</td>
	<td width="50">23</td>
	<td width="50">24</td>
	<td width="50">25</td>
	<td width="50">26</td>
	<td width="50">27</td>
	<td width="50">28</td>
	<td width="50">29</td>
	<td width="50">30</td>
	<td width="50">31</td>
	<td width="50">32</td>
	<td width="50">33</td>
	<td width="50">34</td>
	<td width="50">35</td>
	<td width="50">36</td>
			
			
			
			
			
			
        </tr>
   


</table>  </body>
</html>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa tabela vai exibir os dados da avaliação de cada aluno por professor ou de cada professor por aluno ?

Acho que uma forma de resolver isso será fazer o pivot dos dados para que eles fiquem organizados da forma que deseja para poderem ser percorridos e apresentados da forma como deseja.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por violin101
      Caros amigos do grupo, saudações e um feliz 2025.
       
      Estou com uma pequena dúvida referente a Teclas de Atalho.

      Quando o Caps Lock está ativado o Comando da Tecla de Atalho não funciona.
      ou seja:
      se estiver para letra minúscula ====> funciona
      se estiver para letra maiúscula ====> não funciona
       
      Como consigo evitar essa falha, tanto para Letra Maiúscula quanto Minúscula ?

      o Código está assim:
      document.addEventListener( 'keydown', evt => { if (!evt.ctrlKey || evt.key !== 'r' ) return;// Não é Ctrl+r, portanto interrompemos o script evt.preventDefault(); });  
      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.
       
      Por favor, poderiam me ajudar.

      Estou com a seguinte dúvida:
      --> como faço para para implementar o input código do produto, para quando o usuário digitar o ID o sistema espera de 1s a 2s, sem ter que pressionar a tecla ENTER.

      exemplo:
      código   ----   descrição
           1       -----   produto_A
       
      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.
       
      Humildemente peço desculpa por postar uma dúvida que tenho.

      Preciso salvar no MySql, os seguinte Registro:

      1 - Principal
      ====> minha dúvida começa aqui
      ==========> como faço para o Sistema Contar Automaticamente o que estiver despois do 1.____?
      1.01 - Matriz
      1.01.0001 - Estoque
      1.01.0002 - Oficina
      etc

      2 - Secundário
      2.01 - Loja_1
      2.01.0001 - Caixa
      2.01.0002 - Recepção
      etc
       
      Resumindo seria como se fosse um Cadastro de PLANO de CONTAS CONTÁBEIL.

      Grato,


      Cesar









       
    • Por violin101
      Caros amigos, saudações.

      Por favor, me perdoa em recorrer a orientação dos amigos.

      Preciso fazer um Relatório onde o usuário pode Gerar uma Lista com prazo para vencimento de: 15 / 20/ 30 dias da data atual.

      Tem como montar uma SQL para o sistema fazer uma busca no MySql por período ou dias próximo ao vencimento ?

      Tentei fazer assim, mas o SQL me traz tudo:
      $query = "SELECT faturamento.*, DATE_ADD(faturamento.dataVencimento, INTERVAL 30 DAY), fornecedor.* FROM faturamento INNER JOIN fornecedor ON fornecedor.idfornecedor = faturamento.id_fornecedor WHERE faturamento.statusFatur = 1 ORDER BY faturamento.idFaturamento $ordenar ";  
      Grato,
       
      Cesar
       
       
       
       
    • Por violin101
      Caros amigos, saudações
       
      Por favor, me perdoa em recorrer a orientação dos amigos, tenho uma dúvida.
       
      Gostaria de uma rotina onde o Sistema possa acusar para o usuário antes dos 30 dias, grifar na Tabela o aviso de vencimento próximo, por exemplo:
       
      Data Atual: 15/11/2024
                                           Vencimento
      Fornecedor.....................Data.....................Valor
      Fornecedor_1...........01/12/2024..........R$ 120,00 <== grifar a linha de Laranja
      Fornecedor_1...........01/01/2025..........R$ 130,00
      Fornecedor_2...........15/12/2024..........R$ 200,00 <== grifar a linha de Amarelo
      Fornecedor_2...........15/01/2025..........R$ 230,00
      Fornecedor_3...........20/12/2024..........R$ 150,00
       
      Alguém tem alguma dica ou leitura sobre este assunto ?

      Grato,
       
      Cesar
×

Informação importante

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