Ir para conteúdo
Fórum Script Brasil

rafaelduarte

Membros
  • Total de itens

    4
  • Registro em

  • Última visita

Tudo que rafaelduarte postou

  1. @wash Acredito ter conseguido a solução: Contém com a ajuda de um amigo desenvolvedor web; A lógica foi assim: Uma nova consulta SQL a cada nova linha de Membros; A cada linha de Membros eu tenho um 'COD_MEMBRO', Então esse resultado eu uso para fazer a nova QUERY Em nova SQL eu consultei as frequências de um único membro; e Mandei imprimir com o laço de repetição limitando na quantidade de DATAS (Colunas) disponíveis; SELECT f.data, mf.presenca, mf.cod_membro FROM frequencia as f inner join membro_frequencia as mf on f.cod_frequencia = mf.cod_frequencia and mf.cod_membro = $VARIAVEL and MONTH(f.data) = 05 Resultado da Variavel -> COD_MEMBRO = 1 data presenca cod_membro 2016-05-04 1 1 2016-05-03 1 1 2016-05-05 1 1 CÓDIGO: <table width="600" border="1" cellspacing="5" bgcolor="#FFFFFF"> <tr align="center"> <td width="400" align="center">Nome:</td> <!-- Repetição para aparecer todas as datas que contém frequência de uma determinada célula--> <!-- Imprimi a data na respectiva linha --> <?php do{?> <td align="center"><?php echo date('d/m/Y',strtotime($row_rs_datas_frequencia['data'])); ?></td> <?php }while($row_rs_datas_frequencia = mysql_fetch_assoc($rs_datas_frequencia))?> <td width="200" align="center">Total Presença Membros Mensal</td> <td width="200" align="center">Total Falta Membros Mensal</td> </tr> <!-- Laço para as linhas da Tabela --> <?php do{ ?> <tr align="center"> <!-- Imprimi o membro na respectiva linha --> <td width="400" align="center"><?php echo $row_rs_membros['nome']?></td> <?php $countP=; $countF=; $count=;?> <?php mysql_select_db($database_ChurchApp, $ChurchApp); $query_rs_linha_membro = sprintf("SELECT f.data, mf.presenca, mf.cod_membro FROM frequencia as f inner join membro_frequencia as mf on f.cod_frequencia = mf.cod_frequencia and mf.cod_membro = %s and MONTH(f.data) = 05", GetSQLValueString($row_rs_membros['cod_membro'], "int")); $rs_linha_membro = mysql_query($query_rs_linha_membro, $ChurchApp) or die(mysql_error()); $row_rs_linha_membro = mysql_fetch_assoc($rs_linha_membro); $totalRows_rs_linha_membro = mysql_num_rows($rs_linha_membro); ?> <!-- Imprimi a presença do membro na respectiva linha, com Base na consulta feito a partir do COD_MEMBRO (do laço de repetição) --> <?php do{?> <td align="center"> <?php //echo "CodMembro:".$row_rs_linha_membro['cod_membro']." Data:".$row_rs_linha_membro['data']." Presen:"; ?> <?php if($row_rs_linha_membro['presenca']>=1){ $countP++; echo "P"; }else{ $countF++; echo "F";} ?></td> <?php $row_rs_linha_membro = mysql_fetch_assoc($rs_linha_membro); ?> <!-- Imprimi a presença do membro na respectiva linha, com o limite de DATAS disponíveis --> <?php $count++; }while($count<$totalRows_rs_datas_frequencia)?> <td align="center"><?php echo $countP ?></td> <td align="center"><?php echo $countF ?></td> </tr> <!-- (Repetição) Voltar a imprimir as linhas enquanto tiver membros --> <?php }while($row_rs_membros = mysql_fetch_assoc($rs_membros)) ?> </table> Resultado Tabela em Anexo: Desculpem, esqueci de anexar as imagens do resultado;
  2. @wash Essa parte eu consegui de boa; Meu problema específico é imprimir as colunas respectivas as datas; Mesmo se eu fizer um laço de repetição ele apenas vai Replicar a 1ª coluna de valores; <!-- Imprimi a quantidade de alunos e as frequências --> <td width="400" align="center"><?php echo $row_rs_membros['nome']; ?></td> <!-- ********************************************************************** **************************************************************************** AQUI ESTÁ O PROBLEMA, NÃO ESTOU CONSEGUINDO FAZER APARECER A PRESENÇA DAS OUTRAS DATAS --> <?php $countP=; $countF=;?> <td align="center"> <?php if($row_rs_relatorio['presenca']>=1){ $countP++; echo "P"; }else{ $countF++; echo "F";} $row_rs_relatorio = mysql_fetch_array($rs_relatorio);?></td> <td align="center"> <?php if($row_rs_relatorio['presenca']>=1){ $countP++; echo "P"; }else{ $countF++; echo "F";} $row_rs_relatorio = mysql_fetch_array($rs_relatorio);?></td> <td align="center"> <?php if($row_rs_relatorio['presenca']>=1){ $countP++; echo "P"; }else{ $countF++; echo "F";} $row_rs_relatorio = mysql_fetch_array($rs_relatorio);?></td> <td align="center"><?php echo $countP ?></td> <td align="center"><?php echo $countF ?></td> </tr> <?php }while($row_rs_membros = mysql_fetch_assoc($rs_membros)) ?> </table> Olha como ficou agora: Só que as outras datas estão apenas repetindo a primeira, teria que saber como eu faço para elas não repetirem e pegar as frequências das respectivas datas. @lowys Puxa cara, não sabia disso. Vou me atentar para corrigir essa falha; Você tem uma indicação do que usar para substituir a extensão Mysql_ (Site, apostilas, vídeo-aula etc.) ? De qualquer forma, obrigado pela dica vou pesquisar mais sobre o assunto.
  3. @wash Obrigado por responder! Na verdade meu problema está em CRIAR/ARRUMAR a tabela para apresentar os dados salvos no banco de dados; Segue o trecho onde está a variável $rs_relatório; $colname_rs_relatorio = "-1"; if (isset($_GET['cod_celula'])) { $colname_rs_relatorio = $_GET['cod_celula']; } mysql_select_db($database_ChurchApp, $ChurchApp); $query_rs_relatorio = sprintf("SELECT membro.nome, frequencia.cod_frequencia, frequencia.data, membro_frequencia.presenca FROM membro, frequencia, membro_frequencia WHERE frequencia.cod_celula = %s AND membro.cod_membro = membro_frequencia.cod_membro AND MONTH(frequencia.data) = 05 AND membro_frequencia.cod_frequencia = frequencia.cod_frequencia", GetSQLValueString($colname_rs_relatorio, "int")); $rs_relatorio = mysql_query($query_rs_relatorio, $ChurchApp) or die(mysql_error()); $row_rs_relatorio = mysql_fetch_assoc($rs_relatorio); if (isset($_GET['totalRows_rs_relatorio'])) { $totalRows_rs_relatorio = $_GET['totalRows_rs_relatorio']; } else { $all_rs_relatorio = mysql_query($query_rs_relatorio); $totalRows_rs_relatorio = mysql_num_rows($all_rs_relatorio); } Minha tabela tinha que ficar exatamente como está o exemplo via Excel; Vou fazer uma consulta do banco de dados e postar aqui; SELECT * FROM `membro_frequencia` cod_membro presenca cod_frequencia 1 1 1 5 1 1 11 1 1 120 1 1 125 1 1 131 1 1 1 2 5 1 2 11 1 2 120 2 125 2 131 2 ... (E por ai vai) O que não estou conseguindo fazer é aparacer essas presenças em formato de tabela; Exemplo: Nome - Data1 - Data2 - Data 3 ... Fulano - P - P - F Ciclano - P - F - P Beltrano- F - P - F As soma é o próximo passo...
  4. Olá amigos, gostaria de uma grande ajuda de vocês; Sou estudante e iniciante de programação Web e estou com uma dúvida há dias, já pesquisei em vários fóruns, mas não consegui achar uma solução para o meu problema... Então resolvi pedir a ajuda de vocês com mais experiência que eu. <table width="600" border="1" cellspacing="5" bgcolor="#FFFFFF"> <tr align="center"> <td width="400" align="center">Nome:</td> <!-- Repetição para aparecer todas as datas que contém frequência de uma determinada célula--> <?php do{?> <td align="center"><?php echo date('d/m/Y',strtotime($row_rs_datas_frequencia['data'])); ?></td> <?php }while($row_rs_datas_frequencia = mysql_fetch_assoc($rs_datas_frequencia))?> <td width="200" align="center">Total Presença Membros Mensal</td> <td width="200" align="center">Total Falta Membros Mensal</td> </tr> <?php do{ ?> <tr align="center"> <!-- Imprimi a quantidade de alunos e as frequências --> <td width="400" align="center"><?php echo $row_rs_membros['nome']; ?></td> <!-- ********************************************************************** **************************************************************************** AQUI ESTÁ O PROBLEMA, NÃO ESTOU CONSEGUINDO FAZER APARECER A PRESENÇA DAS OUTRAS DATAS --> <?php $countP=; $countF=;?> <td align="center"> <?php if($row_rs_relatorio['presenca']>=1){ $countP++; echo "P"; }else{ $countF++; echo "F";} $row_rs_relatorio = mysql_fetch_array($rs_relatorio);?></td> <td align="center"><?php echo $countP ?></td> <td align="center"><?php echo $countF ?></td> </tr> <?php }while($row_rs_membros = mysql_fetch_assoc($rs_membros)) ?> </table> Resultado: OBS: No meu banco já estou conseguindo preencher as frequências normalmente, agora estou no passo de gerar os relatórios das mesmas. Resultado Esperado: Meu objetivo era fazer um relatório mensal de frequência como este no Excel: Meus Banco de Dados: Ø MEMBRO · Cod_membro · Nome · ... (informações em gerais) · Cod_celula Ø Célula · Cod_celula · Nome Ø Frequência · Cod_frequencia · Data · ...(Informações em gerais) · Cod_celula Ø Membro_Frequência · Cod_membro · Presença (0=F;1=P) · Cod_frequencia (Tentei resumir a dúvida o máximo que pude, desculpe pelo tamanho do POST) Consultas: mysql_select_db($database_ChurchApp, $ChurchApp); $query_rs_membros = sprintf("SELECT * FROM membro WHERE cod_celula = %s", GetSQLValueString($colname_rs_membros, "int")); $rs_membros = mysql_query($query_rs_membros, $ChurchApp) or die(mysql_error()); $row_rs_membros = mysql_fetch_assoc($rs_membros); $totalRows_rs_membros = mysql_num_rows($rs_membros); mysql_select_db($database_ChurchApp, $ChurchApp); $query_rs_relatorio = sprintf("SELECT membro.nome, frequencia.cod_frequencia, frequencia.data, membro_frequencia.presenca FROM membro, frequencia, membro_frequencia WHERE frequencia.cod_celula = %s AND membro.cod_membro = membro_frequencia.cod_membro AND MONTH(frequencia.data) = 05 AND membro_frequencia.cod_frequencia = frequencia.cod_frequencia", GetSQLValueString($colname_rs_relatorio, "int")); $query_rs_datas_frequencia = sprintf("SELECT frequencia.data FROM frequencia WHERE cod_celula = %s and MONTH(frequencia.data) = 05", GetSQLValueString($colname_rs_datas_frequencia, "int"));
×
×
  • Criar Novo...