Ver Mensaje Individual
  #5 (permalink)  
Antiguo 29/03/2011, 20:57
Avatar de jotaincubus
jotaincubus
 
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años, 6 meses
Puntos: 394
Respuesta: Expresiones regulares mas htaccess

Bueno, después de mucho buscar y leer logre realizar lo que quería, adicional a esto quiero decir que a veces a pesar de lo mucho que uno lea y lea solo UNAS POCAS PERSONAS SON CAPACES DE HACERSE ENTENDER y dan los VERDADEROS PARAMETROS para utilizar las cosas.

No se en donde lo ley porque pase por muchísimas paginas pero quiero AGRADECERLE a esa persona ya que con una simple NOTA al principio del tutorial me saco de una labor de horas y horas de trabajo.

Las RewriteRule NO MODIFICAN LA DIRECCION QUE APARECE EN LA BARRA DE DIRECCION DE LOS USUARIOS, ESO LO TENEMOS QUE HACER NOSOTROS MISMOS

Entonces después de eso me di cuenta que con colocar la regla no se hacia la URL amigable, uno mismo debe colocar el enlace falso tal cual lo coloco en el HTACCESS y el se encarga de redireccionarlo a la verdadera ruta.

bueno ahora si paso a explicar, y si tengo errores bienvenidas sean las criticas

Esto es lo que coloque en mi HTACCESS

RewriteEngine On
RewriteRule ^principal/(.*)/(.*)/(.*)/$ modulo_principal.php?modulo=$1&link=$2&event=$3 [L,NC]

Lo de RewriteRule es para decirle al apache que abriremos una regla

El ^principal/ es para crear nuestro falso directorio, en realidad le estoy diciendo al apache que empieza (^) con principal

(.*) esto es para decirle que puede ser cualquier cosa, numero, carácter, letra y lo utilizamos para pasarle el valor de las variables

Bueno hasta ahí creo que ya esta la parte falsa, ahora viene la verdadera ruta:

Lo único raro aquí es $1, $2 y $3 que corresponden en orden a (.*)/(.*)/(.*) que son las 3 variables que se le pasan a la verdadera pagina para que ella trabaje.

[L,NC] esto son flags o banderas, la L es que si se cumple la regla entonces la trate como si fuera la ultima para que no siga leyendo mas reglas y NC es para que no distinga mayúsculas o minúsculas

Ahora bien, y aquí el porque llevaba horas perdiendo tiempo con esto.

cuando creo el enlace no lo debo hacer como lo hacia con .php?bla bla bla sino:

www.dominio.co/principal/17/1/2/

y funciona perfecto
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???