PHP

PHP: Carregando conteúdo dentro de um div

Veja de forma simples como carregar o conteúdo do site de forma dinâmica.

— index.php (arquivo que contém a estrutura inicial)

<div id="top"></div>
<div id="menu">
   <ul>
        <li><a href="?acessando=home">Home</a></li>
        <li><a href="?acessando=sobre">Sobre</a></li>
        <li><a href="?acessando=produtos">Produtos</a></li>
        <li><a href="?acessando=servicos">Serviços</a></li>
        <li><a href="?acessando=contato">Fale Conosco</a></li>
    </ul> 
</div>
<div id="main">
   <? include("conteudo.php"); ?>
</div>
<div id="footer"></div>

— conteudo.php (arquivo que faz a mágica)

<?
$pagina = isset( $_GET['acessando'] ) ? $_GET['acessando'] : '';
if($pagina=='')
  include ('principal.html');
elseif(file_exists($pagina.'.html')){
  include ($pagina.'.html');
}		
elseif(file_exists($pagina.'.php')){
  include ($pagina.'.php');
}
else 
  include ('principal.html');
?>

12 thoughts on “PHP: Carregando conteúdo dentro de um div

  • ROGIEL PEREIRA SILVA

    Bom dia

    Eu sou iniciante em php e gostaria de uma ajuda.

    Eu tenho uma div content, onde ao clicar no menu é para carregar as páginas dentro.
    Exemplo:
    Ao clicar:
    Clientes:Carregue a página clientes.php
    Fornecedor: Carregue a página fornecedor.php

    Será que poderia me ajudar?

    Resposta
    • Romildo Jr

      Olá, sei que o post já está fechado a muito tempo… Mas assim como eu, alguém pode passar por aqui e precisar dessa dica! Consegui fazer de uma forma e vou postar pra ajudar outros…

      No seu div menu você coloca assim:

      <div class="menu">
          <ul>
              <li><a href="?pg=home.php" class="active" rel="nofollow">Home</a></li>
              <li><a href="?pg=sobre.php" class="active" rel="nofollow">Sobre</a></li>
              <li><a href="?pg=produtos.php" class="active" rel="nofollow">Produtos</a></li>
              <li><a href="?pg=servicos.php" class="active" rel="nofollow">Serviços</a></li>
              <li><a href="?pg=fale_conosco.php" class="active" rel="nofollow">Fale Conosco</a></li>
          </ul> 
      </div>

      No seu div de conteúdo você coloca assim:

      <div id="cont">
      <?php
      $pg = ( isset( $_GET['pg'] )) ? $_GET['pg'] : null;  /*Verifica se a variável $pg tem algum valor, se não... Atribui um valor defalt pra variável */
       
      if ($pg==''){
          include ('home.php');
      }elseif (file_exists($pg)){
          include $pg;
      } else {
          include "404.php";    /*Aqui ele vai chamar a página de erro.. Coloque a sua...*/
      }
      ?>
      </div>
      Resposta
      • Camarada

        Cara… fantástico! Vasculhei a internet inteira atrás disso mas só encontrei soluções com jquery. Segui a sugestão e funcionou muito bem!

        Resposta
        • Igor

          pra quem quiser saber fazer usando jquery e php… o código fica bem prático.

          Home
          Produtos
          Serviços
          Fale conosco

          o código inicia a página no home.php; depois ela substitui o conteúdo da div indicada ao clicar nos links do menu

          Resposta
    • Olá Rogiel.

      O código faz exatamente o que você precisa.

      Resposta
  • Evaristo

    O código é muito bom, mas só funcionou com um item do menu, ou seja, funciona a página home, mas não funciona a página notícias

    Resposta
    • Olá Evaristo.

      Deveria funcionar sim. Veja se a chamada do arquivo no menu está igual ao nome do arquivo.

      Resposta
  • Matheus

    Então por exemplo, tem diferênça se eu passar link index.php?acessando=painel, ou conteudo.php?acessando=painel ?

    Resposta
  • Tiago

    VAleu mesmo
    Com este modelo que enviou sanou uma porrada de duvidas as quais eu tinha

    VAleuuuuuuuuuuuuu

    Resposta
  • marcos

    Boa tarde Tiago!
    Preciso criar um menu dinâmico que carregue diferentes conteúdos (criados dentro de uma página no wp), mas não consigo entender como transformar esse conteúdo em páginas.php, rs…
    Sou iniciante e se vc tiver disponibilidade para uma aula online podemos combinar, ok? Grato!
    Marcos Dias

    Resposta

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *