d1eg0. 3 Denunciar post Postado Abril 15, 2011 Ola pessoal, criei uma classe para verificação da página que vai ser inclusa. Mas ele sempres esta dando erro não consegui encontrar o problema esta assim até agora <?php class getUrl{ //array com todas as paginas private $links=array('home','contato','perfil'); function getLink($link){ $size = sizeof($this->links); if(!empty($link)){ for($i=0;$i<$size;$i++){ if($this->links[$i] === $link){ $link='modulos/'.$link.'.php'; }else{ $link='modulos/erro.php'; } } }else{ $link='modulos/home.php'; } include($link); } } ?> instancio a classe da seguinte maneira <body> <ul> <li><a href="?menu=home">Home</a></li> <li><a href="?menu=contato">Home</a></li> <li><a href="?menu=perfil">Home</a></li> </ul> <?php $menu = new getUrl(); $url = isset($_GET['menu']) ? $_GET['menu']:''; $menu->getLink($url); ?> </body> Alguem achou alguma erro? Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Abril 15, 2011 Qual é a mensagem de erro? Compartilhar este post Link para o post Compartilhar em outros sites
d1eg0. 3 Denunciar post Postado Abril 15, 2011 Ele inclui só a pagina do erro.php Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Abril 15, 2011 Mas pra que esse laço 'for' aí? Não entendi a razão de ser dele... você espera obter o que com isso? :huh: Se o seu objetivo é só selecionar um arquivo php para o include basta usar um switch? switch($link) { case 'home'; case 'contato'; case 'perfil'; include "modulos/{$link}.php"; break; default; include "modulos/erro.php"; break; } Compartilhar este post Link para o post Compartilhar em outros sites
d1eg0. 3 Denunciar post Postado Abril 15, 2011 Mas pra que esse laço 'for' aí? Não entendi a razão de ser dele... você espera obter o que com isso? :huh: Se o seu objetivo é só selecionar um arquivo php para o include basta usar um switch? switch($link) { case 'home'; case 'contato'; case 'perfil'; include "modulos/{$link}.php"; break; default; include "modulos/erro.php"; break; } è o switch ficou bem, eu etava usando o laço para passar elemento por elemento do array e verificar se algum era igual ao requisitado Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Abril 15, 2011 O laço for é para fazer iteração de valores, não para instruções. O problema foi resolvido então? Compartilhar este post Link para o post Compartilhar em outros sites
d1eg0. 3 Denunciar post Postado Abril 18, 2011 Vlw Resolvido! Compartilhar este post Link para o post Compartilhar em outros sites