Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal bom estou com uma ideia mas não sei se iria funcionar e nem como faria ela mas espero que possam me ajudar, eu queria "Verifica se o parâmetro página está sendo passado na url" só que com switch case ao contrario de If como fiz, segue abaixo:
<?php
// Verifica se o parâmetro página está sendo passado na url
if(isset($_GET['pagina'])){
$pagina = $_GET['pagina'];
// Se estiver sendo passado algum valor da página
if($pagina != ''){
// Se página for igual a cadastrar, inclui a página de cadastrar
if($pagina == 'cadastrar'){
include 'usuario/cadastrar.php';
// Se página for igual jogo, inclui a página jogo.php
} else if($pagina == 'jogo'){
include 'usuario/jogo.php';
// Se página for igual a oponente, inclui a página oponente.php
} else if($pagina == 'oponente'){
include 'usuario/oponente.php';
// Senão, inclui a página-inicial.php
} else{
// Verifica se a sessão do usuário foi iniciada
if(isset($_SESSION['usuario'])){
include 'usuario/jogo.php';
}else{
include 'usuario/pagina-inicial.php';
}
}
// Inclui a página inicial
}else{
// Verifica se a sessão do usuário foi iniciada
if(isset($_SESSION['usuario'])){
include 'usuario/jogo.php';
}else{
include 'usuario/pagina-inicial.php';
}
}
// Senão, inclui a página-inicial.php
}else{
// Verifica se a sessão do usuário foi iniciada
if(isset($_SESSION['usuario'])){
include 'usuario/jogo.php';
}else{
include 'usuario/pagina-inicial.php';
}
}
?>Era bem isso mesmo que eu estava tentando fazer, mas ele da erro de syntax
Parse error: syntax error, unexpected 'and' (T_LOGICAL_AND) in C:\xampp\htdocs\PHP\index.php on line 10
Olá!
Segue outra sugestão:
<?php
// se existir usuário na sessão, será jogo, se não, será pagina-inicial
$pagina = isset($_SESSION['usuario']) ? 'jogo' : 'pagina-inicial';
// Verifica se o parâmetro pagina está sendo passado na url e não é vazio
if(isset($_GET['pagina']) && !empty($_GET['pagina'])){
$pagina = $_GET['pagina'];
}
// inclui o arquivo
include 'usuario/'.$pagina.'.php';
@MattheOnly cola o código aqui que deu esse erro de sintaxe 'and' pra gente ver o que pode ter causado isso.
E o código que o @washalbano te indicou também é bacana pra o que você quer, o funcionamento vai ser exatamente igual.
@BrunoBit Esse é o codigo:
if(isset($_GET['p'])) AND $p != '')
@washalbano Obrigado pela ajuda achei interessante, vou testar mas meu foco esta no switch case mesmo!o correto é assim:
if(isset($_GET['p']) AND $p != ''))
Testa aí pra ver se vai agora.Agora foi, obrigado pela ajuda!
Com switch ficaria dessa forma como está lá embaixo, aproveitando arrumei a duplicação de código que tinha, colocando o "$pagina != ' ' " junto com o primeiro if pra verificação, o que fez eliminar mais de 7 linhas de código com 1 única alteração.
A linha de código que tava duplicada de forma desnecessária era essa, onde foi removido mais um if e um else e esse código abaixo:
// Verifica se a sessão do usuário foi iniciada
}else{
// Verifica se o parâmetro página está sendo passado na url
}else{
// Verifica se a sessão do usuário foi iniciada