Ir para conteúdo

POWERED BY:

Arquivado

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

Antonelli

[Resolvido] O que substitui o IFRAME?

Recommended Posts

Olá galera, tudo bom com todos?

Sou "novo" aqui, me cadastrei faz uns dois anos, mas fiquei um pouco afastado desse lance de WEBDESIGNER, mas agora estou voltando pois montei um provedor de internet via rádio e estou fazendo algumas "programações" em PHP para acessar os recursos do servidor. Mas por agora a dúvida é simples, vejam e me ajudem?

 

Vamos lá...

 

No site que estou criando, o topo é sempre igual, e o rodapé também. O que muda é a parte central do site, antigamente usava-se o IFRAME que fazia a pagina raiz ficar aberto e os "subsites" eram carregados dentro daquelas tabelas. E hoje? Como faço pra num ter que ficar carregando o site todo denovo? Tem alguma maneira sem ser com IFRAME, ou se usa o IFRAME, ou deixa "carergando denovo"?

 

Dêem uma olhada: http://serrahost.dyndns.org/

 

Ele está normal, quando clica no link, carrega o "subsite" que tem o topo e o ropade iguais denovo.

Aos que responderem, muito obrigado!

Aos que não responderem, espero que tenham tirado suas dúvidas também.

 

Obrigado galera!

No que eu puder ajudar, estamos aí!

Compartilhar este post


Link para o post
Compartilhar em outros sites

1. explique melhor o que quer.

 

2. atente-se às áreas do forum. Aqui é sobre PHP, portanto, se não tiver relação com php, o topico será movido para uma área adequada.

 

3. para mover o topico para um a´rea adequada, explique novamente o que quer fazer.

 

 

 

em relação ao uso de iframe.. é bastante relativo.

 

basicamente, para um website aberto ao publico, recomenda-se não utilizar iframe para navegação em páginas que necessitam de acessibilidade devido às regras dos mecanismos de busca.

Compartilhar este post


Link para o post
Compartilhar em outros sites

1. explique melhor o que quer.

 

2. atente-se às áreas do forum. Aqui é sobre PHP, portanto, se não tiver relação com php, o topico será movido para uma área adequada.

 

3. para mover o topico para um a´rea adequada, explique novamente o que quer fazer.

 

Vamos lá, explicando melhor...

- Abaixo mostra a "organização" do meu site:

 

Imagem Postada

 

As partes descritas como TOPO, MENU e RODAPE são padrões e estarão em todos os subsites.

O que vai mudar é apenas o que estará dentro de CONTEUDO.

Então em cada site terá que conter o código do TOPO, MENU e RODAPE novamente sempre que abrir um item do menu?

Ou isso é tratado em PHP de outra maneira?

Não queria usar IFRAME pois me limita de usar algumas coisas...!

Estou desatualizado de WEBDESIGNER, queria saber isso pra poder criar um site mais leve, onde não seria necessário carregar o TOPO, MENU e RODAPE novamente!

Desde já agradeço.

- Desculpe-me se postei no lugar errado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Antonelli,

 

se for o que entendi você só quer carregar a parte do meio ao clicar em algum link.

 

se for, eu sempre uso o seguinte código:

 

if( $_GET['go'] != ""){
	$pag = $_GET['go'];
	if(file_exists("$pag.php")){
	include"$pag.php";
	}else{
	include '404.php'; // aqui abre a pagina de erro de "não existe a pagina" personalizada que você tem que criar
	}
	}else{
	include "inicial.php"; // aqui é a pagina que vai abrir quando a pessoa entrar no site
	}

use o código no lugar onde você quer que carregue o conteudo

 

e o link fica assim:

index.php?go=empresa

 

Acho que é isso.

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

if( $_GET['go'] != ""){
	$pag = $_GET['go'];
	if(file_exists("$pag.php")){
	include"$pag.php";
	}else{
	include '404.php'; // aqui abre a pagina de erro de "não existe a pagina" personalizada que você tem que criar
	}
	}else{
	include "inicial.php"; // aqui é a pagina que vai abrir quando a pessoa entrar no site
	}
Script:

 

O $_GET pega algum valor da URL, no código ele verifica se tem go na URL se tiver ele executa o script

 

o resto está explicado acima.

 

Por exemplo eu tenho um site, e quero que só o conteudo do meio mude ao clicar em algum link.

 

 

///////////////////// TOPO ///////////////////////////////////

//////////////// MENU HORIZONTAL //////////////////

MENU VERTICAL //////////////////////////////////////

////////////////// MEIO //////////////////////////////////////

/////////////////////////////////////////////////////////////////

///////////////// RODAPE ////////////////////////////////

 

eu quero mudar só o MEIO...

 

coloco o código acima nessa parte.

 

///////////////////// TOPO /////////////////////////////////

//////////////// MENU HORIZONTAL /////////////////

MENU VERTICAL //////////////////////////////////////

////////////////// MEIO CÓDIGO AQUI /////////////

///////////////////////////////////////////////////////////////

///////////////// RODAPE /////////////////////////////

 

agora tenho que criar a pagina que vai abrir quando a pessoa clicar no link "Downloads"

 

downloads.php

Aqui você encontra tudo o que precisa para seu computador!

agora coloco o link assim:

<a href="?go=downloads"> DOWNLOADS </a>

Explicação:

o link fica assim porque ele indica que 'go' tem o valor de 'downloads' que é a pagina que ele vai procurar no diretorio pra abrir na parte do meio.

 

 

 

Espero ter ajudado, nem posso fala pra você pesquisar no google pq isso foi uma combinação de funções php.

 

mas tente procurar por

$_GET

 

if

 

include.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Meu INDEX é assim:

 

<div> //(abre) principal
     <div> //(abre) topo
          <div>AQUI ENTRA OS CONTATOS DA EMPRESA!</div> //contato
          <div>AQUI ENTRA A LOGO DA EMPRESA!</div> //logo
          <div>AQUI ENTRA O MENU DO SITE!</div> //menu
     </div> //(fecha) topo
     <div>AQUI ENTRA O FORMULARIO DE LOGIN DO SITE!</div> //barra de login
     <div> //(abre) conteudo
          AQUI ENTRA O CONTEUDO "DINÂMICO"!
     </div> //(fecha) conteudo
</div> //(fecha) principal

Para usar esse código, ficaria assim:

 

<div> //(abre) principal
     <div> //(abre) topo
          <div>AQUI ENTRA OS CONTATOS DA EMPRESA!</div> //contato
          <div>AQUI ENTRA A LOGO DA EMPRESA!</div> //logo
          <div>AQUI ENTRA O MENU DO SITE!</div> //menu
     </div> //(fecha) topo
     <div>AQUI ENTRA O FORMULARIO DE LOGIN DO SITE!</div> //barra de login
     <div> //(abre) conteudo
        if( $_GET['go'] != ""){
             $pag = $_GET['go'];
             if(file_exists("$pag.php")){
             include"$pag.php";
             }else{
             include '404.php'; // aqui abre a pagina de erro de "não existe a pagina" personalizada que você tem que criar
             }
        }else{
             include "inicial.php"; // aqui é a pagina que vai abrir quando a pessoa entrar no site
        }
     </div> //(fecha) conteudo
</div> //(fecha) principal

E o que seria esse arquivo "$pag.php"?

E o CONTEUDO do INDEX entraria nesse "inicial.php"?

Nos sites carregados no menu, teria que ter esse código tambem?

Tipo, no "empresa.php" terá que ter apenas o que eu colocaria entre a div "conteudo" ou terá que ter todas as divs incluindo o conteudo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, eu nem li direito aqui os ultimos posts, mas vou dizer como uso no meu site.

minha index é assim:

<div id="corpo">
        	
    <div id="topo">
    <?php include "menus/topo.php"; ?>
    </div>
            
    <div id="menu">
    <?php include("menus/menu_central.php") ?>
    </div>
     
    <div id="esquerdo">
    <?php include("menus/menu_esquerdo.php") ?>      
    </div>
   
    <div id="meio">
    <?php include("paginas/paginas.php")?>		  
    </div>
   
    <div id="direito">
    <?php include("menus/menu_direito.php") ?>                	      
    </div>
    
      
    <div id="rodape" align="center">
    Copyright 2009 ® Design Hansley™<br />Todos os direitos reservados
    </div>
</div>

e a página paginas.php que fica no meio, é assim:

 

<?php 
 switch ($_GET['pg']){
	 
	case 'eventos':
	include "eventos.php";
	break;	
	
	case 'fotos':
	include "fotos.php";
	break;
	
	default:
	include "home.php";
	break;
	}
?>

ai é so colocar os links assim: <a hfer="?pg=pagina_tal">pagina</a> e sempre so muda o meio.

Compartilhar este post


Link para o post
Compartilhar em outros sites

E o que seria esse arquivo "$pag.php"?

E o CONTEUDO do INDEX entraria nesse "inicial.php"?

Nos sites carregados no menu, teria que ter esse código tambem?

Tipo, no "empresa.php" terá que ter apenas o que eu colocaria entre a div "conteudo" ou terá que ter todas as divs incluindo o conteudo?

 

 

if( $_GET['go'] != ""){ // aqui eu falo: se tiver "go" na URL e for diferente de nada FAÇA...
        $pag = $_GET['go'];         // aqui eu criei a variavel $pag que tem o valor $_GET['go']
        if(file_exists("$pag.php")){ // aqui  eu falo se a pagina que o usuario pediu no link existir faça...
        include"$pag.php"; // aqui eu abri a pagina que o usuario pediu
        }else{ // aqui eu digo CASO CONTRARIO (SE A PAGINA NÃO EXISTIR)FAÇA
        include '404.php'; // aqui abre a pagina de erro de "não existe a pagina" personalizada que você tem que criar
        }
        }else{
        include "inicial.php"; // AQUI VAI O CONTEUDO QUE IRIA FICAR NA PAGINA INDEX.PHP MAS AGORA VAI SER INICIAL.PHP (SÓ O CONTEUDO DO MEIO POR EXEMPLO "Bem vindo ao blablabal"
        }

Expliquei linha por linha agora acho que vai ^^

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, segui teu código, deu tudo certo, beleza... mas dá um erro chatinho no "paginas.php", dá uma olhada:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<?php
switch ($_GET['pg']){
 case "eventos":
 include "eventos.php";
 break; 
 case "fotos":
 include "fotos.php";
 break;
 default:
 include "home.php";
 break;
 }
?>
</head>

<body>
</body>
</html>

Aparece o seguinte erro:

Notice: Undefined index: pg in C:\Users\Toom Santos\Desktop\TESTE\paginas\paginas.php on line 7

E agora?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pronto galera, muito obrigado pelas respostas de todos.

Antes deste post, falei sobre o erro:

 

Notice: Undefined index (...)

Não descobri o motivo dele, mas lendo no GOOGLE, acabei testando colocar um "@" antes do "$_GET" e deu certo.

Hansley, obrigado por ter passado seu código, está de parabéns!

Mas agora estou usando o do amigo Alan Alisson! Amigo, obrigado por ter me explicado, seu código funcionou que é uma maravilha (com o @ antes da string também). Ele é mais fácil e completo do que o outro passado, pois não precisa de um "case" pra cada sub-site, ele faz "automático"!

Obrigado à todos, especialmente aos senhores Alan Alisson e Hansley!

 

OBS.: Senhores moderadores, caso queiram, podem colocar o tópico como resolvido e fechá-lo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em vez de esconder os erros com @, evite que eles aconteçam:

$pg = isset( $_GET['pg'] ) ? $_GET['pg'] : null;
switch ( $pg ){

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pronto galera, muito obrigado pelas respostas de todos.

Antes deste post, falei sobre o erro:

 

Notice: Undefined index (...)

Não descobri o motivo dele, mas lendo no GOOGLE, acabei testando colocar um "@" antes do "$_GET" e deu certo.

Hansley, obrigado por ter passado seu código, está de parabéns!

Mas agora estou usando o do amigo Alan Alisson! Amigo, obrigado por ter me explicado, seu código funcionou que é uma maravilha (com o @ antes da string também). Ele é mais fácil e completo do que o outro passado, pois não precisa de um "case" pra cada sub-site, ele faz "automático"!

Obrigado à todos, especialmente aos senhores Alan Alisson e Hansley!

 

OBS.: Senhores moderadores, caso queiram, podem colocar o tópico como resolvido e fechá-lo!

 

 

Por nada cara, e obrigado pelo elogio!

ah e se resolver usar o codigo que lhe passei, primeiramente nao precisa colocar nenhum codigo html na pagina "paginas.php" só o PHP.

e pra tirar aquele erro eu acho que isso resolve:

<?
if(isset ($_GET['pg'])){
$pg = $_GET['pg'];
}
switch ($pg){
         
        case 'eventos':
        include "eventos.php";
        break;

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em si, esse lance do "isset" também não deu certo!

Mas deixa o "@" mesmo, tá funcionando normalmente!

Obrigado à todos!

OBS.: Vou abrir outro tópico agora, estou com alguns problemas quanto ao lance de "ESQUECI A SENHA", se puderem, me dêem uma luz! RS

 

Ae gente, abri o tópico, se puderem dêem uma lida? POR FAVOR! =D

http://forum.imasters.com.br/index.php?/topic/371392-como-fazer-esqueci-a-senha/

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola pessoal me interessei mto por esse topico realmente esses codigos são uma mao na roda... a minha pergunta vai para o HANSLEY ou para quem puder responder...

 

testei aqui o codigo do HANSLEY e ficou perfeito inclusive sem erros... a grande duvida seria fazer o mesmo com links dinamicos...

 

trabalho com banco de dados logo tem alguma paginas detalhes que utilizam parametros por exemplo...

 

<a href="ver_anunciante_categoria.php?cod_categoria=<?php echo $row_rsCategoriasA['cod_categoria']; ?>">

como faria a pagina "paginas" dessa forma... se eu conseguir fazer isso vou poupar um tempo inestimavel =)

 

obrigado a todos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas como é isso ?

é um tipo de paginação ou terá cada pagina ? (se ela é gerada automática ou voce que faz).

 

se existir cada pagina por exemplo: codigo01.php , codig02.php

 

você poderia fazer da mesma forma:

<?
if(isset ($_GET['cod_categoria'])){
$cod-cat = $_GET['cod_categoria'];
}
switch ($cod-cat){
         
        case '01':
        include "codigo01.php";
        break;

?>

se não for assim, explica melhor porque na verdade no entendi muito bem! http://forum.imasters.com.br/public/style_emoticons/default/grin.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola Hanshey agradeço pela resposta

 

bom na verdade é o seguinte no meu menu lateral tenho um recordset que exibe todas as categorias de anunciantes

por exemplo: Academias, Restaurantes, etc...

 

eu linko esse recordset com a pagina ver_cliente_categoria.php... o sistema pega o codigo da categoria e exibe apenas os anunciantes da categoria ACADEMIAS por exemplo... ou seja o link só esta nos nomes das categorias gerados pelo recordset...

 

na verdade naum tenho escrito ACADEMIAS ou RESTAURANTES no menu... e sim estou exibindo os dados da tabela CATEGORIA....

 

o link seria sempre para a pagina ver_cliente_categoria.php mas ele depende do codigo da categoria que é passado por parametro... como faria esse esquema de includes na pagina PAGINAS dinamicamente?

 

=/ sera que tem como?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele exibe fotos, dados, endereços.. ?

então...

se tudo vai para a pagina ver_cliente_categoria.php voce ao coloca no link:

<a href="ver_cliente_categoria.php?cod_categoria=<? echo "$cod_cat"; ?>">

 

ai na pagina ver_cliente_categoria.php voce faz um select assim:

 

$cod_cat = $_GET['cod_categoria'];
$sql = mysql_querry("SELECT * FROM tabela WHERE cod_categoria = '$cod_cat'");
while($linha = mysql_fetch_array($sql)){

$foto_cliente = $linha['foto_cliente'];
}
echo "$foto_cliente";

è isso ?

isso foi so pra tentar te explicar.

to saindo agora, amanhã respondo de novo (se precisar) flw.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele exibe fotos, dados, endereços.. ?

então...

se tudo vai para a pagina ver_cliente_categoria.php voce ao coloca no link:

<a href="ver_cliente_categoria.php?cod_categoria=<? echo "$cod_cat"; ?>">

 

ai na pagina ver_cliente_categoria.php voce faz um select assim:

 

$cod_cat = $_GET['cod_categoria'];
$sql = mysql_querry("SELECT * FROM tabela WHERE cod_categoria = '$cod_cat'");
while($linha = mysql_fetch_array($sql)){

$foto_cliente = $linha['foto_cliente'];
}
echo "$foto_cliente";

è isso ?

isso foi so pra tentar te explicar.

to saindo agora, amanhã respondo de novo (se precisar) flw.

 

 

Sim é isso porem ja esta funcionando em meu site... o select o relacionamento entre as tabelas Anunciante e categoria tbm...

 

Vou dar um exemplo melhor:

 

no meu index.php ta assim:

<?php do { ?>
                <li><a href="ver_anunciante_categoria.php?cod_categoria=<?php echo $row_rsCategoriasA['cod_categoria']; ?>">» <?php echo $row_rsCategoriasA['nome_categoria']; ?></a></li>
                <?php } while ($row_rsCategoriasA = mysql_fetch_assoc($rsCategoriasA)); ?>

Uso o do while para repetir dos os registros da tabela categoria certo?

 

Ai Linko o registro com a pagina ver_anunciante_categoria.php quando o codigo da categoria enviado for igual ao codigo do select que eu fiz para as categorias que começam com "A"... ok

 

isso funciona perfeitamente

 

porem na pagina ver_anunciante_categoria eu carrego tdo novamente... topo menu lateral e tdo mais...

 

o minha duvida seria como adaptar seu codigo com includes... no meu caso, ja que meu link nao é estatico e depende do codigo da categoria cadastrada

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.