COMANDO AO INVÉS DE THtmlRenderer Boa noite a todos. Criei um modelo de tela em html no entanto como vou manipular não só a informação como também sua quantidade resolvi então passar para dentro de um código php. A minha duvida é o seguinte, como executo este html dentro do codigo sem ter que salvar o arquivo html e depois carrega-lo ? CÓDIGO PHP ...
MC
COMANDO AO INVÉS DE THtmlRenderer  
Fechado
Boa noite a todos.

Criei um modelo de tela em html no entanto como vou manipular não só a informação
como também sua quantidade resolvi então passar para dentro de um código php.

A minha duvida é o seguinte, como executo este html dentro do codigo sem ter que salvar o arquivo html
e depois carrega-lo ?


CÓDIGO PHP

 
  1. <?php
  2. class TelaIni_Portaria extends TPage
  3. {
  4. /**
  5. * Class constructor
  6. * Creates the page
  7. */
  8. function __construct()
  9. {
  10. parent::__construct();
  11. TPage::include_css('app/resources/styles.css');
  12. // Saudação ao Usuario
  13. $Saudacao = TSession::getValue('username').' '.strtoupper( TGeral::Saudacao());
  14. // Criando o Form Principal
  15. $form = new TQuickForm('form_TelaIni_Portaria');
  16. $form->class = 'tform';
  17. $form->style = 'display: table; width:100%';
  18. $form->setFormTitle( $Saudacao );
  19. // Criando o TPanel
  20. $panel = new TPanelGroup('');
  21. // Criando o html
  22. $body = array();
  23. $body[] = '<table border="0" width="100%" cellpadding="10">';
  24. $body[] = '<tr>';
  25. //--COLUNA 1 -----------------------------------------------------------
  26. $body[] = '<td width="32%" valign="top">';
  27. //--- PANEL 1 ------------------------------------------------------
  28. $body[] = '<div class="panel panel-primary">';
  29. $body[] = ' <div class="panel-heading" >';
  30. $body[] = ' <h2 class="panel-title fa fa-pencil-square-o fa-lg">   ';
  31. $body[] = ' MURAL DE RECADOS';
  32. $body[] = ' </h2>';
  33. $body[] = ' </div>';
  34. $body[] = '</div>';
  35. $body[] = '</td>';
  36. //Fechando o html
  37. $body[] = '</tr>';
  38. $body[] = '</table>';
  39. // Fim Html
  40. $html = ?? Comando
  41. // Adcionando html ao Panel (funciona qdo usado em conjunto com o THtmlRenderer fica igual a figura em anexo )
  42. $panel->add($html);
  43. $container = new TVBox;
  44. $container->style = 'width: 100%';
  45. $container->add($form1 );
  46. $container->add($panel1);
  47. parent::add($container);
  48. }
  49. }
  50. ?>



HTML MODELO

<!--[main]--> <table border="0" width="100%" cellpadding="10"> <tr> <!--COLUNA 1 ------------------------------------------------------------------> <td width="32%" valign="top"> <!-- PANEL 1 ----------------------------------------------------------> <div class="panel panel-primary"> <div class="panel-heading" > <h2 class="panel-title fa fa-pencil-square-o fa-lg">    MURAL DE RECADOS </h2> </div> <div class="alert alert-danger" role="alert"> <span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span> <span class="sr-only">Erro:</span> ATENÇÃO - PORTARIA </div> <div class="panel-body"> Nesta tela Inicial em breve estará dividida em 5 outras telas: - MURAL DE RECADOS Recados Dirigido a PORTARIA - RESERVAS Próximas 5 Reservas (Salão de Festas ) - ENTRADA - AUTORIZAÇÕES As Autorizações de Entrada no Condominio do Dia - CRACHAS Os Crachas que estarão Vencidos - MERCADORIAS As mercadorias com mais de 1 Mes que foram recebidas e ainda não foram entregues. </div> </div> </td> <!--COLUNA 2 ------------------------------------------------------------------> <td width="3%" valign="top"></td> <td width="31%" valign="top"> <!-- PANEL 1 ----------------------------------------------------------> <div class="panel panel-success"> <div class="panel-heading"> <h2 class="panel-title fa fa-calendar fa-lg">    RESERVAS </h2> </div> <a href="#" class="list-group-item">Dapibus ac facilisis in <span class="badge">14</span> </a> <a href="#" class="list-group-item">Cras sit amet nibh libero</a> <a href="#" class="list-group-item">Porta ac consectetur ac</a> <a href="#" class="list-group-item">Vestibulum at eros</a> </div> <!-- PANEL 2 ----------------------------------------------------------> <div class="panel panel-warning"> <div class="panel-heading"> <h2 class="panel-title fa fa-thumbs-o-up fa-lg">    ENTRADA - AUTORIZAÇÕES </h2> </div> <a href="#" class="list-group-item">Dapibus ac facilisis in <span class="badge">14</span> </a> <a href="#" class="list-group-item">Cras sit amet nibh libero</a> <a href="#" class="list-group-item">Porta ac consectetur ac</a> <a href="#" class="list-group-item">Vestibulum at eros</a> </div> </td> <!--COLUNA 3 ------------------------------------------------------------------> <td width="3%" valign="top"></td> <td width="31%" valign="top"> <!-- PANEL 1 ----------------------------------------------------------> <div class="panel panel-info"> <div class="panel-heading"> <h2 class="panel-title fa fa-newspaper-o fa-lg">    CRACHAS </h2> </div> <a href="#" class="list-group-item">Dapibus ac facilisis in <span class="badge">14</span> </a> <a href="#" class="list-group-item">Cras sit amet nibh libero</a> <a href="#" class="list-group-item">Porta ac consectetur ac</a> <a href="#" class="list-group-item">Vestibulum at eros</a> </div> <!-- PANEL 2 ----------------------------------------------------------> <div class="panel panel-danger"> <div class="panel-heading"> <h2 class="panel-title fa fa-truck fa-lg">    MERCADORIAS </h2> </div> <a href="#" class="list-group-item">Dapibus ac facilisis in <span class="badge background-color: red">14</span> </a> <a href="#" class="list-group-item">Cras sit amet nibh libero</a> <a href="#" class="list-group-item">Porta ac consectetur ac</a> <a href="#" class="list-group-item">Vestibulum at eros</a> </div> </td> </tr> </table> <!--[/main]-->

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (10)


NR

Você pode passar o html como texto mesmo. Por exemplo, como você está adicionando o html na variável $body que é um array, você precisa transformá-la em string antes de adicioná-la ao panel:
 
  1. <?php
  2. $html = implode(' ',$body);
  3. ?>
MC

Nataniel obrigado pela dica, mas resolvi de uma forma mais simples...

Assim que eu terminar a tela irei postar como contribuição.

Assim muitos poderão usar a 'DICA' para aperfeiçoar suas telas.


Obrigado

Abraços
JA

Marco, posta como ficou, to fazendo uma tela parecida com essa, tem interesse em fazer uma parceria para um sistema de condominio ?
MC

Junior, beleza

Assim que terminar vou postar para todos.

Quanto ao sistema de Condominio, ele nasceu de uma "brincadeira" minha para o meu condomínio o qual sou um dos Gestores.
Ele cresceu, esta crescendo..... Meu foco esta no controle interno (até agora não vi nada parecido).

meu email - marcoarcampos@gmail.com para trocarmos figurinha.

Abraços
JH

Bom dia ja postou como ficou teu codigo fiquei interessado em ver como ficou pois vou precisar deu uma pagina parecida com essa .
MC

Jorge o que eu fiz eh muito simples..
Tudo que vc precisa esta neste endereço

getbootstrap.com.br/components/

Nele você encontra como criar as paginas html, acima tem um modelo que gera a imagem que esta neste post.

O que mudou foi apenas {$mural} é onde será inserido o restante da html

<td width="32%" valign="top"> <!-- PANEL 1 -> MURAL DE RECADOS --------------------------------------> <div class="panel panel-primary"> <div class="panel-heading" > <h2 class="panel-title fa fa-bullhorn fa-lg">&nbsp;&nbsp;&nbsp; MURAL DE RECADOS </h2> </div> {$mural} </div> </td>



Informações do {$mural}

1) carrega o html

$html = new THtmlRenderer('app/resources/arquivo.html');


2) Aqui você carrega as informações e passa para o html

 
  1. <?php
  2. // informações oriundas da Base de Dados ou outros...
  3. if ($muralobjs)
  4. {
  5. foreach ($muralobjs as $muralobj)
  6. {
  7. $mural_body .= '<a '.$mural_href.$muralobj->MUR_ID.'" class="list-group-item">'.
  8. TDate::date2br( $muralobj->MUR_DATAINI ).' - '.
  9. $muralobj->MUR_PREVIA.'<font color="maroon">......Leia mais</font>
  10. </a>';
  11. }
  12. }
  13. // Aqui voce atribui ao {$mural}
  14. $this->replaces['mural'] = $mural_body;
  15. ?>



Agora é brincar e ver o melhor, tenho 5 modelos de paginas que são chamadas conforme o login do usuário.
MC

ops esqueci de alguns detalhes

A segunda parte é uma função para chamar o Html, abrir o banco de dados, carrega as informações

no final usa este codigo

 
  1. <?php
  2. // Atribui os valores ao Html
  3. $html->enableSection('main', $this->replaces );
  4. // Adcionando html ao Panel
  5. $panel->add($html);
  6. ?>
EL

Bom dia, Marco!
Poderia postar o código completo? Ainda tenho dificuldades em implementar este modelo.
Desde já agradeço.
LF

Ainda usa este código? Não consegui implementar.
MC

Leondas

Sim eu uso, mas o Adianti tem algo parecido

www.adianti.com.br/framework_files/tutor/index.php?class=KanbanView


tambem vc pode utilizar exemplos desta pagina

https://adminlte.io/themes/AdminLTE/index2.html