Giihh 6 Denunciar post Postado Agosto 17, 2015 Olá, As urls estão assim atualmente: http://www.meusite.com.br/paginas.php?id=23titulo=prad estou tentando deixar assim: http://www.meusite.com.br/prad o htaccess: <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^/([a-z0-9-]+)/?$ /paginas.php?id=$2&titulo=$1 [NC,L] </IfModule> mas não esta funcionando, onde estou errando? Agradeço ajuda Compartilhar este post Link para o post Compartilhar em outros sites
Electronic 124 Denunciar post Postado Agosto 17, 2015 http://www.meusite.com.br/prad como vai ficar o ID? Compartilhar este post Link para o post Compartilhar em outros sites
Giihh 6 Denunciar post Postado Agosto 17, 2015 Não vai precisar exibir o id, possivel? Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Agosto 17, 2015 Sugiro montar as rotas no PHP, não no .htaccess. Veja: http://rberaldo.com.br/urls-amigaveis-sem-htaccess-usando-slim/ Compartilhar este post Link para o post Compartilhar em outros sites
Giihh 6 Denunciar post Postado Agosto 17, 2015 Obrigada pela indicação Beraldo e como fazer isso no htaccess mesmo? Preciso aprender Deu pra ter uma noção com esse artigo Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Agosto 17, 2015 A sua regra só tem um grupo (caracteres entre parênteses). Logo, não faz sentido usar $2, apenas $1 estará disponível Tente isto: RewriteRule ^/([a-z0-9-]+)/?$ /paginas.php?titulo=$1 [NC,L] Compartilhar este post Link para o post Compartilhar em outros sites
Giihh 6 Denunciar post Postado Agosto 17, 2015 pensei que, mesmo que não fizesse parte de algum grupo, fosse necessario colocar os grupos no lado direito, pois tem informação que é passada pelo id, pra depois pegar com GET[$id] Tente isto: RewriteRule ^/([a-z0-9-]+)/?$ /paginas.php?titulo=$1 [NC,L] Não funcionou Compartilhar este post Link para o post Compartilhar em outros sites
Electronic 124 Denunciar post Postado Agosto 17, 2015 Tira a barra do final Compartilhar este post Link para o post Compartilhar em outros sites
Giihh 6 Denunciar post Postado Agosto 18, 2015 tentei RewriteRule ^/([a-z0-9-]+)$ /paginas.php?titulo=$1 [NC,L] e RewriteRule ^([a-z0-9-]+)$ /paginas.php?titulo=$1 [NC,L] sem resultado Compartilhar este post Link para o post Compartilhar em outros sites
Electronic 124 Denunciar post Postado Agosto 18, 2015 testa isso coloca antes das regras RewriteBase / e testa sem as barras se for ter barras tem que escapa-las com barra invertida Compartilhar este post Link para o post Compartilhar em outros sites
Giihh 6 Denunciar post Postado Agosto 18, 2015 <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^/([a-z0-9-]+)$ /paginas.php?titulo=$1 [NC] </IfModule> fiz assim e ainda nada Compartilhar este post Link para o post Compartilhar em outros sites
Electronic 124 Denunciar post Postado Agosto 18, 2015 tira a primeira barra ou escapa essa com barra invertida Compartilhar este post Link para o post Compartilhar em outros sites
Giihh 6 Denunciar post Postado Agosto 18, 2015 tentei das duas formas e nada também Compartilhar este post Link para o post Compartilhar em outros sites
Electronic 124 Denunciar post Postado Agosto 18, 2015 tentei das duas formas e nada também mas como você esta digitando no navegador? Compartilhar este post Link para o post Compartilhar em outros sites
Giihh 6 Denunciar post Postado Agosto 18, 2015 clico em um botão qualquer da lista na página lista.php: <a href="paginas.php?id=<?php echo $value['id'] ?>titulo=<?php echo $value['titulo'] ?>" class="btn btn-primary" role="button">ver</a> ai na pagina que abre na url retorna por exemplo http://www.meusite.com.br/paginas.php?id=23titulo=prad Compartilhar este post Link para o post Compartilhar em outros sites
Electronic 124 Denunciar post Postado Agosto 18, 2015 Antes de fazer o htaccess vc tem que definir como a url amigavel vai ser quais os parametros vai passar? olha o que vc disse meusite.com.br/prad <- como vc vai seber o ID conteudo? As urls estão assim atualmente: http://www.meusite.com.br/paginas.php?id=23titulo=prad estou tentando deixar assim: http://www.meusite.com.br/prad Compartilhar este post Link para o post Compartilhar em outros sites
Giihh 6 Denunciar post Postado Agosto 18, 2015 Acho que da para fazer sem exibir o id na url, mesmo ele estando ali. Penso que a url amigavel é apenas uma forma de exibição que o apache vai fazer, mas no php mesmo o id estará na url Compartilhar este post Link para o post Compartilhar em outros sites
Electronic 124 Denunciar post Postado Agosto 18, 2015 acho que você ta confundindo tem que passar o ID sim, como você disse ele estara na url e é aqui que você usaria sua url amigavel e você nao esta usando <a href="/titulo/<?php echo $value['id'] ?>" class="btn btn-primary" role="button">ver</a> da uma lida http://wbruno.com.br/php/desmistificando-urls-amigaveis-com-php-e-htaccessapache/ http://blog.thiagobelem.net/aprendendo-urls-amigaveis/ Compartilhar este post Link para o post Compartilhar em outros sites
Giihh 6 Denunciar post Postado Agosto 18, 2015 mas se eu coloco somente <a href="<?php echo $value['titulo'] ?>" class="btn btn-primary" role="button">ver</a> fala que a pagina não existe, mas nesse caso como vai passar o id para o url? Pois com o id da url, no paginas.php estou usando o GET[$id] para um select no db assim consigo imprimir o conteudo do id solicitado na página Compartilhar este post Link para o post Compartilhar em outros sites
Electronic 124 Denunciar post Postado Agosto 18, 2015 mas se eu coloco somente <a href="<?php echo $value['titulo'] ?>" class="btn btn-primary" role="button">ver</a> fala que a pagina não existe, mas nesse caso como vai passar o id para o url? Pois com o id da url, no paginas.php estou usando o GET[$id] para um select no db assim consigo imprimir o conteudo do id solicitado na página tem que ter a barra no começo você esta fazendo o contrario o que você coloca dentro do href que é a url amigavel, é o que vai aparecer no navegador, e é apartir dela que você cria a regra htaccess o que você digita ou clica é meusite.com/livros/suspense/pagina-3/ mas o servidor reescreve meusite.com/livros.php?categoria=suspense&pagina= Compartilhar este post Link para o post Compartilhar em outros sites