Hola a todos, tengo un pequeño problema con URLs amigables que no me funciona bien, pongo el código.
código html:
<a <?php if(isset($_GET['seccion']))if($_GET['seccion']=="noticias")echo 'class="section_on"'; ?> href="noticias"><li>Noticias</li></a>
código .htaccess:
RewriteEngine on
RewriteRule ^(.*)$ index.php?seccion=$1
No me funciona bien me sale la página sin estilo más o menos creo a que se debe pero no se por qué no me funciona el code.
quiero lo siguiente.
localhost/CarpetaPrincipal/peliculas
Esta cerrado casi al final href="noticias">
Fijate si te sirve esto,
http://underc0de.org/foro/programacion-web-117/como-crear-urls-amigables-con-htaccess/
si dentro de la variable seccion estas usando barras inclinadas (/) te esta retrocediendo directorios, lo que puedes aser son 3 cosas para solucionarlo
1) los directorios de las hojas de estilo imagenes, y scripts deven de estar con muchas un igual a las barras que pases por get ._. o escribe muchas :D
ejemplo si tienes esto
<link href="estilo.css" type="text/css" media="screen" rel="stylesheet" />
cambia el htref por muchas barras para que salgas del directorio pero esto tambien para imagenes y scripts
<link href="../../../../../../../../../../../../../../../../estilo.css" type="text/css" media="screen" rel="stylesheet" />
o tambien puedes aser esto
2)en lugar de usar barras inclinadas usa guiones, ya sean bajos o normales <-- la mas recomendable
o tambien puedes aser esto
3)usa la etiqueta base <-- en la cabecera de tu web, la etiqueta base es un comodin que te permite controlar los directorios de tu web
Hola brother, trata haciendo la expresión regular más específica, trata de usar urls absolutas y en el html de la web agrega:
<base href="/" />
Saludos!
Vale en el hosting lo he conseguido =D
ahora voy a ver como es en localhost que me tiraba errores =D.
Muchas gracias por la ayuda.
EDITO: Solucionado en localhost
El problema es que la web en locahost<-dominio estaba metida en una carpeta otracarpeta<- carpeta , entonces por esto fallaba todo =D
RewriteRule ^(\w+)$ /otracarpeta/index.php?seccion=$1
<a <?php if(isset($_GET['seccion']))if($_GET['seccion']=="noticias")echo 'class="section_on"'; ?> href="noticias"><li>Noticias</li></a>
<a <?php if(isset($_GET['seccion']))if($_GET['seccion']=="peliculas")echo 'class="section_on"'; ?> href="peliculas"><li>Peliculas</li></a>