Ir para conteúdo

POWERED BY:

Arquivado

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

carbonieri

Nested repeat Region - Sem o dreamweav

Recommended Posts

Caros colegas,

Estou passando por muitos problemas para superar este obstáculo: Criar uma página PHP (PDO) para a visualização de um relatório a partir das seguintes tabelas em um database Mysql:

Tabela: Organisation

id_org / name_org / country_org / status_org

1 / Alfa / Brasil / Active
2 / Beta / Argentina / Active
3 / Zulu / Italia / Active

Tabela: Departments

id_dep / idfk_org_dep / sector_dep
1 / 1 / Quality
2 / 1 / Production
3 / 2 / Documentation
4 / 2 / Quality

Tabela: personal

id_per / idfk_dep_per / name_per / position_per
1 / 1 / Fabio / Auditor
2 / 2 / Moises / Programador
3 / 2 / Francisco / Faxineiro


Tudo o que eu quero é criar uma página dinâmica para quando eu precisar instalar novas empresas e funcionários, não seja necessário mudar a estrutura:


Visualização da página:


*** Actions Foreseen ***

► Alfa-Brasil

→Quality

*Fabio (Auditor)

→Production

*Moisés (Programador)

*Francisco (Faxineiro)

► Beta-Argentina

→Documentation

→Quality



Muito obrigado pela ajuda e parabéns pelo site!!! Conheço o imasters desde anos atrás e já aprendi muito com os post. Bom ver esse tipo de bom serviço em português. Abs

Fabio Carbonieri



No dreamweaver o instrumento Nested repeat region faz isso perfeitamente e o código gerado, mais ou menos é assim (o exemplo abaixo não foi feito com os dados acima, mas acho que mostrar essa estrutura ajuda muito):

mysql_select_db($database_gam, $gam);
$query_menu = "SELECT book_lib, theme_lib FROM lib";
$menu = mysql_query($query_menu, $gam) or die(mysql_error());
$row_menu = mysql_fetch_assoc($menu);
$totalRows_menu = mysql_num_rows($menu);

mysql_select_db($database_gam, $gam);
$query_libcha = "SELECT chapter_cha FROM libcha WHERE idlib_cha = 123456789";
$libcha = mysql_query($query_libcha, $gam) or die(mysql_error());
$row_libcha = mysql_fetch_assoc($libcha);
$totalRows_libcha = mysql_num_rows($libcha);

        <td height="20" valign="top" bordercolor="#FFFFFF"><?php echo $row_menu['book_lib']; ?></td>
        <td height="20" valign="top" bordercolor="#FFFFFF"><?php
  if ($totalRows_menu>0) {
    $nested_licha = str_replace("123456789", $row_menu['id_lib'], $query_libcha);
    mysql_select_db($database_gam);
    $libcha = mysql_query($nested_libcha, $gam) or die(mysql_error());
    $row_libcha = mysql_fetch_assoc($libcha);
    $totalRows_libcha = mysql_num_rows($libcha);
    $nested_sw = false;
    if (isset($row_libcha) && is_array($row_libcha)) {
      do { //Nested repeat
?>
            <?php echo $row_libcha['count(id_cha)'];
      } while ($row_libcha = mysql_fetch_assoc($libcha)); //Nested move next
    }
  }
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, qual exatamente é a sua dúvida? Observe que o intuito do fórum é te auxiliar, não é montar o script para você.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando o programa do tipo WYSIWYG é usado para programar, não há uma certa atenção pelo que é feito no código.

 

Basicamente, o que o seu código está fazendo, é retornar livros cadastrador e, após, retornar capítulos conforme um id, o que não faz muito sentido. Acredito que tenha parte do código omitido ou realmente não está sendo utilizado.

 

Ao final das contas, PDO não está sendo utilizada e o nested repeat region não parece ser nada além de uma organização de conteúdos associados/vinculados. O que pode ser feito através de joins.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela info. Vc tem razão. Não preciso do script mas sim de um exemplo de função para isso...como naquela parte que colei acima.

 

Eu consegui montar as queries e funcionam bem, mas eu não sei como fazer seus resultados aparecerem na forma que descrevi no post.

 

Simplesmente a minha dúvida é: Já que eu estou trabalhando com 3 queries relacionadas entre elas, como uma sub query lê o id da query principal?

 

Qual seria uma fórmula ou operador para realizar isso?

 

Query1_resultado_ID3
Query2_resultado_ID3

Query3_resultado_ID3

 

Exatamente como faz o dreamweaver (NEsted Repeat Region)

 

 

Espero ter esclarecido...Agradeço desde já!!!!!!


O join é perfeito, mas o grande problema é que o resultado é assim:

 

 

Empresa / Departamento /

 

Organisation Departament Personal

Alfa Quality Fabio (Auditor)

Alfa Production Moisés (Programador)
Alfa Production Francisco (Faxineiro)

Beta Documentation NULL

Beta Quality NULL

 

 

 

 

 

 

 

Mas deveria ser assim

 

 

► Alfa-Brasil
→Quality
*Fabio (Auditor)
→Production
*Moisés (Programador)
*Francisco (Faxineiro)
► Beta-Argentina
→Documentation
→Quality

Compartilhar este post


Link para o post
Compartilhar em outros sites

O resultado é como você programar a visualização. O uso de join lhe trará o resultado em apenas uma consulta. A repetição, visualização e agrupamento, depende da sua programação.

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.