Ir para conteúdo
Fórum Script Brasil
  • 0

Carregar páginas na mesma


Vrech

Pergunta

Galera, sou iniciante no php e queria abrir páginas na mesma página, com menu, até ae eu consegui fazer normalmente, ele abre as páginas, o problema é que quando eu abro outra página sem ser a "index.php" ele ainda continua exibindo os conteúdos da "index.php"...

Como nos prints abaixo, eu abri a página "pesquisar.php", mas ainda continua escrito o "home" do "index.php", queria saber como "separar" os conteúdos, de maneira que cada página tenha o seu, sem ficar uma junto com a outra.

Obrigado pela atenção, aguardo resposta!

menu.png

site.png

index.png

Link para o comentário
Compartilhar em outros sites

21 respostass a esta questão

Posts Recomendados

  • 0

Olá!

Segue sugestão para solução:

<?php
// Com uso de um operador ternário, defina a view default a ser carregada:
$view = isset($_GET['pagina']) ? $_GET['pagina'] : 'home';

// defina o caminho até o arquivo a ser carregado
$file = 'site/' . $view . '.php'; // assim, os arquivos a serem carregados devem ficar na pasta: site/
?>
<!doctype>
<html>
    <head>
        <title>Título :: <?= $view ?></title>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
    </head>
    <body>
        <nav>
            <?php
            // defina: key = nome de arquivo; value = O que aparecerá na tela
            $menu = [
                'home' => 'Home',
                'members' => 'Integrantes',
                'about' => 'Sobre Nós',
                'search' => 'Pesquisar',
                'adm' => 'Administração',
            ];
            /* seguindo o exemplo acima, os arquivos devem se chamar:
              home.php
              members.php
              about.php
              search.php
              adm.php
              e devem todos estar dentro da pastinha: site/
             */
            foreach ($menu as $key => $value) {
                echo "<a href='?pagina=$key'>$value</a> ";
            }
            ?>
        </nav>
        <div id="stage">
            <?php
            // verifique se o arquivo existe
            if (is_file($file)) {
                // inclua o arquivo
                include $file;
            } else {
                // se o arquivo não existe, exibe mensagem:
                echo '<p class="error">Página não encontrada!<br>' . $view . '</p>';
            }
            ?>
        </div>
    </body>
</html>

 

Link para o comentário
Compartilhar em outros sites

  • 0

beleza, o código está funcionando, porém, ele só exibe na página oque tá escrito nesse código:

Queria que exibisse as informações que estão em outra página, por exemplo, na página integrantes tem muito código em html, como por exemplo de colocar imagem, e ele iria ficar ruim se eu colocasse junto a essa página, eu queria chamar essa página agora.

'home' => 'Home',
                'members' => 'Integrantes',
                'about' => 'Sobre Nós',
                'search' => 'Pesquisar',
                'adm' => 'Administração',
Link para o comentário
Compartilhar em outros sites

  • 0

Olá,

O nome do arquivo é Integrantes.php (salvei como php, porque não sei ainda se iria fazer mais alguma coisa que precise do php, ou se vai ser só o html)

O print do browser é do layout do site, na parte direita onde está escrito "integrantes" queria exibir a outra a página "Integrantes.php", assim como as demais páginas.Mandei um print do código também.

Sem título.png

codigo2.png

Link para o comentário
Compartilhar em outros sites

  • 0

Olá!
Essa <td> que foi aberta na linha 12, tá sendo fechada onde?

Aparentemente seu script está funcionando, pois apareceu a palavrinha "Integrantes", que originalmente não existe no script;

Link para o comentário
Compartilhar em outros sites

  • 0

Ceeeeeerto!

Olha... a palavrinha à esquerda do sinal =>, é o nome do arquivo( que você quer que seja carregado, sem a extensão - "extensão é o que aparece do pontinho pra frente"); A palavrinha à direita do sinal =>, é o que vai aparecer na tela;

Afinal, qual é o nome do arquivo que você quer que seja carregado?

Vamos fazer de conta que é site/novo.php; então aquela linha do código, deveria ficar assim:

'novo' => 'Integrantes',

Tente aí;

Editado por wash
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...