Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Carregar PHP em div dentro de PHP dinâmicamente

Pessoal, estou com a seguinte dúvida: Eu estou criando um site e quero que tudo aconteça a partir do index.php, para isso criei o html usando CSS para ter um cabeçalho e um menu lateral a esquerda e o corpo do site a direita. No menu vou ter os links para as demais páginas php do site. Minha dúvida, como carregar as demais páginas php no corpo do index.php dinamicamente conforme utilizada as opções do menu?

Aqui está a estrutura básica do meu index.php:

<DOCTYPE html>
<html>
    <head>
        <title>Empresa</title>
        <link rel="stylesheet" type="text/css" href="/css/reset.css"/>
        <link rel="stylesheet" type="text/css" href="/css/index.css"/>
        <script type="text/javascript" src="/js/index.js"></script>

    </head>
    <body>
        <header>
            <h1>Empresa</h1>
        </header>
        <main>
            <div id="sidebar">
                <nav>
                    <h1>Menu</h1>
                    <ul>
                        <li><a href='/pages/funcionarios.php'>Funcionários</a></li>
                    </ul>
            </div>
            <div id="conteudo">

            </div>
        </main>
        <footer>
            Rodapé
        </footer>
    </body>
</html>
1 resposta
solução!

Olá Ronaldo, desculpas pela demora na resposta mas vou tentar ajudar caso ainda tenha essa dúvida.

O caminho mais comum e mais simples é fazer o inverso do que você falou, em cada página chamar o cabeçalho e o rodapé e não chamar o conteúdo a partir de uma página só. Seria algo como:

// Arquivo header.php
<DOCTYPE html>
<html>
    <head>
        <title>Empresa</title>
        <link rel="stylesheet" type="text/css" href="/css/reset.css"/>
        <link rel="stylesheet" type="text/css" href="/css/index.css"/>
        <script type="text/javascript" src="/js/index.js"></script>

    </head>
    <body>
        <header>
            <h1>Empresa</h1>
        </header>
        <main>
            <div id="sidebar">
                <nav>
                    <h1>Menu</h1>
                    <ul>
                        <li><a href='/pages/funcionarios.php'>Funcionários</a></li>
                    </ul>
            </div>
            <div id="conteudo">
// Arquivo footer.php
            </div>
        </main>
        <footer>
            Rodapé
        </footer>
    </body>
</html>
// Exemplo de página interna contato.php
<?php require 'header.php'; ?>
    <h1>Página de Contato</h1>
    // Conteúdo da página...
<?php require 'footer.php'; ?>

Já a estrutura que você mencionou também pode ser feita, seria necessário um código para fazer o roteamento, que seria identificar a página requisitada e fazer a sua inclusão.

No curso de MVC é mostrado como fazer uma estrutura bem organizada utilizando um único ponto de entrada (o index.php) e o curso ainda vai bem além disso. Assistindo pelo mesmos a primeira aula já vai ser mostrado como fazer um roteador básico.