Durbano 1 Denunciar post Postado Janeiro 12, 2011 Segue o seguinte código abaixo: <?php $var = ""; $var = $_GET['var']; echo $var; if($var=="") { $var = "home.php"; } else {$var = "setores.php"; } ?> <link href="css\estilo.css" rel="stylesheet" type="text/css"> <frameset rows="242,*" framespacing="0" frameborder="no"> <frame src="topo.php" name="top" frameborder="no" scrolling="no" noresize marginwidth="0" marginheight="0" id="top"> <frameset rows="*,35" framespacing="0" frameborder="no"> <?php echo"<frame src=$var name=meio frameborder=no scrolling=yes marginwidth=0 marginheight=0 id=meio>"; ?> <frame src="rodape.htm" name="rodape" frameborder="no" scrolling="no" marginwidth="0" marginheight="0" id="rodape"> </frameset> </frameset> <noframes><body> </body></noframes> </html> O PROBLEMA é...na parte que é FEITO o if ele sempre entende a $var como vazio. Não sei se é problema no method GET, mas nao consigo fazer, estou quebrando a cabeça ae...ALGUEM ME AJUDA. OBJETIVO é fazer com que a váriavel que foi passada por link de uma outra pagina, deste modo, index.php?var=homo.php (que ao clicar no link aciona a pagina index e leva a variavel) index.php é esse codigo todo ai em cima a tal da pagina, entao oq acontece. Ela recebe a váriavel certinho mas quando faço o IF ela entende sempre como VAZIO " ", estranho pq eu já testei se a variavel nao estava chegando com o conteudo "HOME.PHP"(index.php?var=HOME.PHP), e ela esta chegando com o conteudo mas no IF ele entende como vazio e só abre a HOME. bom nao sei mas oq fazer só falta isso para terminar o site inteiro :/ tem uma STRING lá no meio codigo HTML na tag FRAMA que esta assim <?php echo"<frame src=$var name=meio frameborder=no scrolling=yes marginwidth=0 marginheight=0 id=meio>"; ?> VIUUUUU a variavel está ai no meio $VAR ela que decide qual pagina vai abrir. ME AJUDEEEE AJUDA AE qualquer coisa é valida....abraço a todos Compartilhar este post Link para o post Compartilhar em outros sites
vasconcelloslf 0 Denunciar post Postado Janeiro 12, 2011 Amigo, pelo que entendi, talvez o problema seja na hora de voce transferir um .php para a variavel GET. Nao tenho certeza absoluta se o PHP aceita e entende isso. Se esse de fato for o problema voce pode passar apenas o nome da pagina em como variaval, estilo index.php?var=home, e depois voce concatena do seguinte modo: $var_final = $_GET['var'] . 'php'; Outro problema que voce pode estar tendo é que os atributos da sua tag frame (pra qual voce passa a variavel) nao estao em XML strcit, e se no cabecalho voce declarou dessa forma, certamente nao vai funcionar, pois em XML tudo tem que estar em letra miniscula, tudo que for aberto tem que ser fechado e todo atributo de todo elemento tem que estar entre aspas. A solução seria apenas fazer o seguinte: <?php echo'<frame src="$var" name="meio" frameborder="no" scrolling="yes" marginwidth="0" marginheight="0" id="meio">'; ?>] Espero ter ajudado, se nao foi isso, dá o feedback ! Valeu ! Compartilhar este post Link para o post Compartilhar em outros sites
André Severino 3 Denunciar post Postado Janeiro 12, 2011 <html> <?php if(isset($_GET['var']) == "home") { $var = 'home.php'; } else { $var = 'setores.php'; } ?> <link href="css\estilo.css" rel="stylesheet" type="text/css"> <body> <?php // Inclui o arquivo TOPO include ('topo.php'); // Inclui o arquivo do meio $var if ($var) { include ("{$var}");} // Inclui o arquivo de rodape include ('rodape.php'); ?> </body> </html> Tente usar a função include, ao invés do iframe :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Janeiro 12, 2011 o.o po. faz com switch .. não seria melhor ?? a maioria dos sites que faço , eu faço com switch() .. ajuda bastante dai eu so incluo o conteudo .. o codigo e o seguinte $content = $_GET['pagina']; switch($content){ case 'tal'; include ("tal"); break; } mais ai , vi mta gente perguntando ... o problema de fazer isso e os formularios de GET na pagina , la voce vai usar http://seusite.com/index.php?pagina=pagina_que_vai_passar_no_case dai vai alterar a URL se mandar GET ... que nada eu resolvi meu problema assim <input type="hidden" name="pagina" value="nome_do_case"> botava o hidden dentro do formulario .. dai ele manda a pagina local .. sem sair os dados da URL .. qual a vantagem ? voce so faz --TOPO --conteudo pelo switch --RODAPE ou seja , o TOPO & conteudo .. vao na mesma pagina que o switch .. dai você so inclui o conteudo pras paginas que serão criadas passando pelo switch .. ;) Compartilhar este post Link para o post Compartilhar em outros sites
vasconcelloslf 0 Denunciar post Postado Janeiro 12, 2011 Fewdox, valeu pelo esclarecimento. Entao se eu passar qualquer coisa pro get (blabla.php) ele só vai reconhecer mesmo tudo como uma string certo ? Pensando bem é o que deveria acontecer mesmo, falei aquilo antes só porque me pareceu razoavel. Abraços ! Compartilhar este post Link para o post Compartilhar em outros sites
Durbano 1 Denunciar post Postado Janeiro 12, 2011 Fala galera obrigada por responderem, mas nenhuma das alternativaas funciona: vasconcelloslf - Este metodo que você colocou( $var_final = $_GET['var'] . 'php';) não funciona eu já tinha testado isso mas nao funciona. A variavel GET percebi que ela nao consegue se relacionar com nada. Nao consigo junta-la EX: $_GET['var'].'php'. Nao consigo utilizar em uma função ela sempre e considerado como VAZIO, a coisa mais estranha é que quando eu mando ECHO $_GET['var'] aparece o conteudo(HOME.PHP). muito estranhooo. Continue tentando me ajudar e obrigada por enquanto. André da Silva - a função INCLUDE ela nao consegue criar a tela do meio como FRAME (nao fica um barra de rolagem). Obirgado por enquanto e continue me ajudando até conseguirmo. abraço Fewdox - a função INCLUDE ela nao consegue criar a tela do meio como FRAME (nao fica um barra de rolagem) e a tag INPUT eu nao serve pq nao estou usando formulário. Obirgado por enquanto e continue me ajudando até conseguirmo. abraço ME AJUDEM ABRAÇO a todos Compartilhar este post Link para o post Compartilhar em outros sites
André Severino 3 Denunciar post Postado Janeiro 13, 2011 André da Silva - a função INCLUDE ela nao consegue criar a tela do meio como FRAME (nao fica um barra de rolagem). Obirgado por enquanto e continue me ajudando até conseguirmo. abraço Então você insere uma div e limita o seu tamanho e conteudo(como o frame), e define um overflow:auto; ou scroll, para simular a barra :thumbsup: <div style="overflow:auto; width:600px; height:400px;"> <?php include('conteudo.php'); ?> </div> Ou se você prefir use essa função. function getGet($campo){ return isset($_GET[$campo]) ? $_GET[$campo] : ''; } ... <div id="topo"> TOPO </div> <div id="conteudo"> <?php $pg = getGet('pg'); $file = is_file($pg.'.php') ? $pg.'.php' : 'principal.php'; // principal = pagina default caso nao encontre a solicitada include_once $file; ?> </div> <!-- / DIV CONTEUDO --> <div id="rodape"> RODAPE </div> e os link's você declara assim <a href="?pg=home">Página principal</a> <a href="?pg=setores">Setores</a> ... Compartilhar este post Link para o post Compartilhar em outros sites
Durbano 1 Denunciar post Postado Janeiro 15, 2011 Ai galera consegui resolver o problemaa... vou postar o código aqui para alguém que estiver com o mesmo problema que eu. Obrigada a todos pela ajuda novamente. <?php $v = $_GET['v']; switch($v){ case "": $v = "home.php"; break; case 1: $v = "home.php"; break; case 2: $v = "setores.php"; break; case 3: $v = "servicos.php"; break; } ?> <html> <body style="overflow-y: hidden;overflow-x: hidden;"> <?php include 'topo.htm'?> <?php echo "<iframe src=$v name=meio frameborder=no scrolling=yes marginwidth=0 marginheight=0 id=meio width=100% height=58%></iframe>"; ?> <?php include 'rodape.htm'; ?> </body> </html> PROBLEMA RESOLVIDO: com a o include odo TOPO.php eu consigo pegar as variáveis, depois utilizando a tag IFRAME eu consigo transportar as várias para ela tudo isso apenas em uma página só abraçoo Compartilhar este post Link para o post Compartilhar em outros sites
Andrey Knupp Vital 136 Denunciar post Postado Janeiro 15, 2011 Graças a Ideia Acima :joia: Que Bom Que Resolveu .. Mais .. Tem Um Detalhe que da pra Adicionar pra ficar melhor .. segue o codigo abaixo <?php $v = $_REQUEST['v'] // ou $_GET .. switch($v){ case "": $topic = " // titulo a pagina"; $v = "home.php"; break; case 1: $topic = " // titulo a pagina"; $v = "home.php"; break; case 2: $topic = " // titulo a pagina"; $v = "setores.php"; break; case 3: $topic = " // titulo a pagina"; $v = "servicos.php"; break; } if(empty($topic)) { print'<center><b><font color="red">Pagina Não Encontrada</font></b><Br>'; // se quiser da um 404 aqui .. } ?> OBS: no $topic , não e o titulo la de cima não , e apenas uma var pra confirmar que a pagina existe .. Enfim , se a $topic for vazia , ou seja (nao tiver passado) por nenhum dos 'case' .. ele manda o erro . (não para a execuçao do resto do script) apenas vai mostrar que ta errado a pagina que o cara foi , ou seja .. as vezes o cara erra na URL lá , dai a pagina ou conteudo fica em branco ele vai pensar que sua pagina ta com erro .. ai a mensagem serve de utilidade pra informar a ao 'cara' que ele ta. em pagina não existente ou invalida .. Abraços .. Compartilhar este post Link para o post Compartilhar em outros sites