Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala galera, então, eu tenho um site que usa a seguinte querystring:
<div id="conteudo">
<?php
$query="$page";
$subquery="$sub";
$dir="pages/";
$loc="flavf_";
$ver="$dir$loc$query.php";
$subver="$dir$loc$subquery.php";
if ($query == "") {
include "pages/flavf_home.php";
} elseif ($subquery != "") {
include "$subver";
} elseif (!file_exists($ver)) {
include "pages/flavf_erro.php";
} else {
include "$ver";
}
?>
</div>
Se tiverem sugestões para melhorar ou consertar (hehe) avisem, sou bem iniciante em php.
Bom seguinte, ela funcionava muito bem quando o site estava hospedado no www.freetzi.com (hospedagem para testes) quando transferi o site para o local certo www.flaviafacchini.com.br passou a não funcionar, vou passar o link do site antigo www.ligaedesliga.freetzi.com lá o site está funcionando perfeitamente. Acredito que possa ser problema nas configurações do php do servidor novo, mas não sei como arrumar, se puderem ajudar agradeço. Abraço!
Obrigado Beraldo acredito que resolvi o problema da querystring, ficou assim:
<?php
$query=$_GET['page'];
$subquery=$_GET['sub'];
$dir="pages/";
$loc="flavf_";
$ver=$dir.$loc.$query . 'php';
$subver=$dir.$loc.$subquery . 'php';
if ($query == "") {
include "pages/flavf_home.php";
} elseif ($subquery != "") {
include "$subver";
} elseif (!file_exists($ver)) {
include "pages/flavf_erro.php";
} else {
include "$ver";
}
?>
Não usei o isset, vou dar uma estudada melhor no item mais tarde.
Porém me surgiu outro problema, descobri que o erro na ativação das abas se encontra no código seguinte:
<body id="<?php
if ($page != "") { echo $_REQUEST['page']; }
else { echo "home"; } ?>">
Que é responsável por definir a id da tag body, sendo assim quando o link serviços é ativado a id do body passa a ser serviços, mas assim como a querystring parou de funcionar quando troquei o servidor, agradeço se puder me ajudar novamente, abraço!if ($_REQUEST['page'] != "") { echo $_REQUEST['page']; }
Amigo; geralmente quando uma variável é verificada é para ser usada.
De acordo com seu Código, A variável verificada não existia; mas a que fora usada 'Creio eu' que exista.
Renato não entendi muito bem o que você disse, mas é o seguinte, a variável que eu uso para a id vem do link, ex:"index.php?page=servicos" ali no código a idéia é a seguinte, se a variável não estiver definida é para deixar a tag com a id home, da página inicial, caso o usuário tenha clicado no menu para ir para outra página o código deve pegar a variável da página selecionada e definir como id da tag body.
Ops, entendi agora eu acho, vou mudar lá.
Perfeito meu querido! Funcionou 100%, obrigado! Abraço
Ops, entendi agora eu acho, vou mudar lá.
aSAPOKSpoAKSopk
eu rio
Haha, desculpa é a pressa aqui :(
quanto ao isset
if ( isset( $_GET['page'] ) )
{
$page = $_GET['page'];
} $page = NULL;
}$page = isset($_GET['page']) ? $_GET['page'] : NULL;
Só achei engraçado, é o que as vezes acontece comigo.. rsrs
A criação automática de variáveis depende da diretiva register_globals. Elas serão criadas automaticamente se essa diretiva estiver em ON, o que não é recomendado.
Leia:
http://www.php.net/manual/pt_BR/security.globals.php
Use $_GET
http://www.php.net/manual/pt_BR/reserved.variables.php
$_GET['page], $_GET['sub'] ...
Use concatenação na variável $ver.
Use isset() para saber se há variáveis na URL. Isso evita geração de erros.