Resulta que generalmente el " - " es como el separador de variables a la hora de imprimir una URL con Mod Rewrite. Mi problema es, si dentro del valor de una variable existe este guión, se trunca todo.
En palabras prácticas, digamos que quiero imprimir amigablemente una URL que lee dos variables, por ejemplo:
http: // www. dominio.com/index.php?nombre=Fulatino&apellido=Perez
Se imprimiría así:
http://www.dominio.com/Fulatino-Perez.htm usando un Mod Rewrite sencillo como:
Cita:
Mi problema es:RewriteRule (.*)-(.*)\.htm$ index.php?nombre=$1&apellido=$2 [L]
Si alguna de estas dos variables (nombre o apellido) tiene el guión dentro del valor de su string, se jode todo.
O sea, si quisiera imprimir el nombre, por ejemplo: Pedro Da-Vinci el Mod Rewrite va tomar a la variable "apellido" como "Da" y no "Da-Vinci", en este caso, y obviamente no va encontrar nada cuando busque en la base de datos.
Mi pregunta del millón ahora es:
Cómo le hago con Mod Rewrite y las expresiones regulares para decirle que, si dentro del valor de la variable encuentra el "-" lo tome como parte del valor de la variable y no como el separador de variables?
Si alguien sabe le quedo infinitamente agradecido, llevo mucho rato lidiando con ésto y naranjas de nada. Ensayé cosas como:
Cita:
Pero no me sirvieron RewriteRule ([a-z0-9_-]*)-([a-z0-9_-]*)\.htm$ index.php?nombre=$1&apellido=$2 [L]
Les agradezco cualquier ayuda!!