Obrigado Nando. Segue o e-mail mais "apresentável" : ) > > Amigo,> > Não sei se é a melhor solução, mas eu costumo brincar com urls > > amigáveis> > usando esse pedaço de código para controle de rotas. > > Você pode mudar A ORDEM DOS CONDICIONAIS se quiser que o MVC procure> > > > primeiro isso, depois aquilo. Você tem total liberdade para fazer o que> > > > quiser, lembrando que eu já "fatiei" a url recebida e aloquei na ordem com> > > > os seguintes nomes: > > "www.exemplo.com/controller/método/parâmetro<http://www.exemplo.com/controller/m%C3%A9todo/par%C3%A2metro>.> > > > No entando, como você pôde ver, eu posso processar da forma e ordem que > > eu> > quiser, ou ainda eu posso pegar um pedaço e executar OUTRO > > controller.> > Espero ter contribuído de alguma forma. http://pastebin.com/qEuc3D19 > > Att,
> From: [email protected] > Date: Sat, 30 Apr 2011 22:22:53 -0300 > To: [email protected] > Subject: Re: [CodeIgniter] Problema com Rotas e Segments! > > http://pastebin.com/ ? :] > > Em 30 de abril de 2011 22:09, Salvador S. Scardua < > [email protected]> escreveu: > > > > > Amigo, > > Não sei se é a melhor solução, mas eu costumo brincar com urls amigáveis > > usando esse pedaço de código para controle de rotas. > > function rotas($class) { > > // index? if ($this->uri['controller'] == "") { > > $this->loadController("home"); } else { > > // buscar? if ($this->uri['controller'] == "buscar") { > > $this->loadController("listagem", "buscar", $this->uri['method'], > > $this->uri['param']); } > > // controller? $d = > > dir($GLOBALS['blog_framework_controller']); > > while (false !== ($entry = $d->read())) { if > > (strpos($entry, '.php')) { $rotas[] = str_replace('.php', '', > > $entry); } } if > > (in_array($this->uri['controller'], $rotas)) { if > > ($this->uri['method']) { > > $this->loadController($this->uri['controller'], $this->uri['method'], > > $this->uri['param']); } else { > > $this->loadController($this->uri['controller'], 'index'); } > > } > > // nome de categoria? $listagem_controller = > > $GLOBALS['blog_framework_controller'] . "listagem.php"; > > require_once($listagem_controller); $controller = new listagem(); > > $res = $controller->existeCategoria($this->uri['controller']); > > if ($res) { $this->loadController("listagem", "categoria", > > $this->uri['controller'], $this->uri['method']); } > > // nome-de-um-artigo? $artigo_controller = > > $GLOBALS['blog_framework_controller'] . "artigo.php"; > > require_once($artigo_controller); $controller = new Artigo(); > > $res = $controller->existeArtigo($this->uri['controller']); if > > ($res) { $this->loadController("artigo", "index", > > $this->uri['controller']); } } // 404, nenhum controller > > não foi encontrado $this->loadController("erro_404"); } > > Você pode mudar A ORDEM DOS CONDICIONAIS se quiser que o MVC procure > > primeiro isso, depois aquilo. Você tem total liberdade para fazer o que > > quiser, lembrando que eu já "fatiei" a url recebida e aloquei na ordem com > > os seguintes nomes: > > "www.exemplo.com/controller/método/parâmetro<http://www.exemplo.com/controller/m%C3%A9todo/par%C3%A2metro>. > > No entando, como você pôde ver, eu posso processar da forma e ordem que eu > > quiser, ou ainda eu posso pegar um pedaço e executar OUTRO controller. > > Espero ter contribuído de alguma forma. > > Att, > > > From: [email protected] > > > Date: Sat, 30 Apr 2011 21:23:17 -0300 > > > To: [email protected] > > > Subject: [CodeIgniter] Problema com Rotas e Segments! > > > > > > Pessoal, tudo bem? > > > Então estou com um problema e queria compartilhar com vcs para ver se > > alguem tem algum tipo de luz para me dar. > > > > > > Então, tenho uma aplicação (www.quegostoso.com.br - Meu site) > > > Estou tento alguns problemas de rotas, q q ta rolando: > > > > > > Tenho atualmente uma cidade no sistema, ele é preparado para trabalhar > > com N cidades, atraves de cookie > > > mas acho que seria muito interessante colocar a cidade na url, hj a > > página inicial independente da cidade é: > > > > > > www.quegostoso.com.br/home > > > > > > Eu gostaria que isso fosse, > > > www.quegostoso.com.br/nome-da-cidade > > > > > > para mudar de cidade existe uma url que limpa e grava um cookie no > > usuário, mas ai vai outro problema > > > tenho um controllador chamado ofertas-recentes , queria que ficasse > > > > > > www.quegostoso.com.br/nome-da-cidade/ofertas-recentes > > > > > > O Problema é que a aplicação tem todas os controllers trabalhando com > > segments e nisso se eu colocar mais um /alguma-coisa > > > vou ter que mudar tudo, o que vem a ser um grande trabalho. > > > > > > Alguem tem algum tipo de ideia q desse pra me ajudar? > > > > > > Allan Torres > > > > > > > > > > > > _______________________________________________ > > > [email protected] > > > http://www.codeigniter.com.br > > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br > > > > > > --------------------------- > > > Oportunidade de negócio > > > http://www.franquiasargohost.net > > > --------------------------- > > > > _______________________________________________ > > [email protected] > > http://www.codeigniter.com.br > > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br > > > > --------------------------- > > Oportunidade de negócio > > http://www.franquiasargohost.net > > --------------------------- > > > _______________________________________________ > [email protected] > http://www.codeigniter.com.br > http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br > > --------------------------- > Oportunidade de negócio > http://www.franquiasargohost.net > --------------------------- _______________________________________________ [email protected] http://www.codeigniter.com.br http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br --------------------------- Oportunidade de negócio http://www.franquiasargohost.net ---------------------------

