• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Byter

Urls Variaveis.

5 mensagens neste tópico

Bem, esta vai ser a minha 1ª de muitas duviadas, espero eu :P

O que gostaria de saber é aqui uma coisa que eu não consigo resolver.

Se forem a www.techtuga.net/t/portfolio.php e carregarem em webdesign, aparece tudo bem.

Mas se forem a Design, repete a parte do Web Design. (Mesmo sem nessa pagina que inclui ter posto)

Porque? Aqui tenho o codigo, digam me se tem alguma coisa errada:

<?php
$des = $_GET['des']; 

switch($des){ 
  case "index": 
     include("portfolio/des.html"); 
     break; 

  case "des1": 
     include("portfolio/design/des1.html"); 
     break; 

    
} 

$web = $_GET['web']; 

switch($web){ 
  case "index": 
     include("portfolio/web.html"); 
     break; 

  case "techtuga": 
     include("portfolio/design/techtuga.html"); 
     break; 

   default: 
     if(empty($_GET["des" or "web"])){ 
      include("inicio.php"); 
     } else { 
      include("404.html"); 
     } 

}
?>

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não sei se tem a ver com a tua dúvida, mas

if(empty($_GET["des" or "web"])){

deveria ser:

if(empty($_GET["des"]) or empty($_GET["web"])){

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O teu problema tem a ver com os switches.

Experimenta assim:

$des = $_GET['des']; 
switch($des){ 
  case "index": 
     include("portfolio/des.html"); 
     break; 

  case "des1": 
     include("portfolio/design/des1.html"); 
     break; 

} 

$web = $_GET['web']; 

if(!empty($web)){
  switch($web){ 
    case "index": 
       include("portfolio/web.html"); 
       break; 
  
    case "techtuga": 
       include("portfolio/design/techtuga.html"); 
       break; 
  
     default: 
       if(empty($_GET["des"]) or empty($_GET["web"])){ 
        include("inicio.php"); 
       } else { 
        include("404.html"); 
       } 
  
  }
}

Como eu faria com switch:

$des = $_GET['des']; 
$web = $_GET['web']; 

switch($des){ 
case "index": 
	include("portfolio/des.html"); 
	break; 
case "des1": 
	include("portfolio/design/des1.html"); 
	break; 
default:
	switch($web){ 
		case "index": 
			include("portfolio/web.html"); 
			break; 
      		case "techtuga": 
         		include("portfolio/design/techtuga.html"); 
         		break; 
  
		default: 
         		if(empty($_GET["des"]) or empty($_GET["web"])){ 
          			include("inicio.php"); 
         		} else { 
          			include("404.html"); 
         		} 
  
    	}
}

Como eu faria com if/elseif/else:

$des = $_GET['des']; 
$web = $_GET['web']; 

if($des == "index"){ 
$inc = "portfolio/des.html"; 
}elseif($des == "des1"){
$inc = "portfolio/design/des1.html"; 
}elseif($web == "index"){ 
$inc = "portfolio/web.html"; 
}elseif($web == "techtuga"){ 
$inc = "portfolio/design/techtuga.html"; 
}elseif(!empty($web) || !empty($des)){
$inc = "404.html";
}

include (empty($inc) ? "inicio.php" : $inc);

Como eu faria se fosse eu a fazer do zero: Não usava 2 variáveis diferentes.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora